Import data into R with an unknown number of columns?

前端 未结 2 581
猫巷女王i
猫巷女王i 2020-11-28 07:59

I\'m trying to read a text file with different row lengths:

1
1   2
1   2   3
1   2   3   4
1   2   3   4   5
1   2   3   4   5   6
1   2   3   4   5   6   7         


        
2条回答
  •  夕颜
    夕颜 (楼主)
    2020-11-28 08:47

    There is nice function count.fields (see help) which counts number of column per row:

    count.fields("test", sep = "\t")
    #[1] 1 2 3 4 5 6 7 8
    

    So, using your second solution:

    no_col <- max(count.fields("test", sep = "\t"))
    data <- read.table("test",sep="\t",fill=TRUE,col.names=1:no_col)
    data
    #   X1 X2 X3 X4 X5 X6 X7 X8
    # 1  1 NA NA NA NA NA NA NA
    # 2  1  2 NA NA NA NA NA NA
    # 3  1  2  3 NA NA NA NA NA
    # 4  1  2  3  4 NA NA NA NA
    # 5  1  2  3  4  5 NA NA NA
    # 6  1  2  3  4  5  6 NA NA
    # 7  1  2  3  4  5  6  7 NA
    # 8  1  2  3  4  5  6  7  8
    

提交回复
热议问题