使用粘贴功能显示多个数据集?

Showing multiple datasets using paste function?

我对在 R 中使用 "paste" 函数有疑问。

设置:

我有 1000 个数据集,每个数据集的维度为 (5 X 100)。

它们分别称为 X1、X2、...、X999、X1000。 我只想查看每个数据集的第一行。 例如,X1[1,], X2[1,], ..., X999[1,], X1000[1,].

但是我想使用循环来节省时间。 这是我最终生成错误消息的代码。

plot(X1[1,], type="s", col = "deeppink1",
  xlab = "Steps")

for(t in 2:1000){
lines(paste("X", t, sep="")[1,], type="s", col = "deeppink1")
}

错误消息说

Error in paste("final", t, sep = "")[1, ] : 
incorrect number of dimensions

我正在尝试使用这段代码来解决问题,但无法解决。请帮忙!提前致谢!

paste("X", t, sep="")是字符串,不是变量。

您必须编写 get(paste("X", t, sep="")) 才能使用您的方法,但您确实应该将所有数据集放在一个列表中并循环遍历它们:

for(t in 2:1000){
lines(your_list[[t]][1,], type="s", col = "deeppink1")
}

这是一个数组解决方案。因为你所有的 data.frames 都是相同的维度,你可以很容易地用数组来做到这一点。

示例数据:

Your_array<-array(1:500000,dim=c(100,5,1000)) #rows, columns , frames

显示每个data.frame

的第一行
Your_array[1,,]