从CSV到R读取名称列表

时间:2017-09-23 16:58:40

标签: r

我有一个名字的文本文件,用逗号分隔,我想把它读成R中的任何东西(数据框或矢量都很好)。我尝试read.csv,它只是作为单独的列的标题读取它们,但是0行数据。我尝试header = FALSE并将它们作为单独的列读取。我可以使用它,但我真正想要的是一列只有一堆行,每个名称一行。例如,当我尝试打印此数据框时,它会打印所有无效的列标题,然后不会打印这些值。它看起来应该很容易使用,但在我看来,一列名字会更容易使用。

3 个答案:

答案 0 :(得分:2)

由于OP要求我,我将上述评论作为答案发布 它非常简单,它来自于使用:Rover a 读取数据,数字或字符序列的一些练习。

scan

答案 1 :(得分:1)

您可以使用read.csv读取字符串作为标题,然后只提取名称(使用names)并将其放入data.frame

data.frame(x = names(read.csv("FILE")))

例如:

write.table("qwerty,asdfg,zxcvb,poiuy,lkjhg,mnbvc",
            "FILE", col.names = FALSE, row.names = FALSE, quote = FALSE)
data.frame(x = names(read.csv("FILE")))

      x
1 qwerty
2  asdfg
3  zxcvb
4  poiuy
5  lkjhg
6  mnbvc

答案 2 :(得分:1)

那样的东西?

制作一些测试数据:

# test data
list_of_names <- c("qwerty","asdfg","zxcvb","poiuy","lkjhg","mnbvc" )
list_of_names <- paste(list_of_names, collapse = ",")

list_of_names

# write to temp file
tf <- tempfile()
writeLines(list_of_names, tf)

你需要这个部分:

# read from file
line_read <- readLines(tf)
line_read

list_of_names_new <- unlist(strsplit(line_read, ","))