将导入的csv数据保存在vector-R中

时间:2015-06-15 00:06:11

标签: r csv

我发现read.csv("file.csv")$V1可能有助于将导出的表拆分为列,但我的数据以逐行的方式组织,所以我想从e {{1}按顺序将元素记录到向量中}。有什么想法可以在R中完成吗?

更新: 导入的mydata看起来像:

lement[1][1] ->...->element[n][n]

所需的输出为矢量:c(1,2,3,4,5,6,7 ......)

1 个答案:

答案 0 :(得分:2)

使用我提供的代码,一个简单的解决方案可能是简单地提取行,但它看起来太容易了,也许我错过了一些东西。

new_dat <- dat[1, ]
new_dat
[1]  1  4  7 10 13 16 19 22 25

修改

我的解决方案运行良好,但效率不高。在这里,我有一个改进的循环版本,因此您可以只在一个命令中单独存储对象。

首先定义将成为对象名称的元素:

val <- c(1:3)
nam <- "new_dat_"

然后用循环提取所有元素。

for(i in 1:nrow(dat)){ assign(paste(nam, val, sep = "")[i], dat[i, ]) }

之后使用ls(),您应该会看到3个名为new_dat_1","new_dat_2", "new_dat_3" "val"的元素,每个元素都包含一行数据。如果您必须提取多行而不仅仅是一行并导致此输出,则此解决方案非常有用:

new_dat_3
[1]  3  6  9 12 15 18 21 24 27
new_dat_1
[1]  1  4  7 10 13 16 19 22 25
new_dat_2
[1]  2  5  8 11 14 17 20 23 26