相关疑难解决方法(0)

将新列添加到表或数据框列表中的每个元素

我有一个文件列表.我还有一个"名称"列表,我substr()从这些文件的实际文件名中获取.我想为列表中的每个文件添加一个新列.此列将包含"names"中相应元素,重复次数为文件中的行数.

例如:

df1 <- data.frame(x = 1:3, y=letters[1:3])
df2 <- data.frame(x = 4:6, y=letters[4:6])
filelist <- list(df1,df2)
ID <- c("1A","IB")
Run Code Online (Sandbox Code Playgroud)

伪代码

  for( i in length(filelist)){

       filelist[i]$SampleID <- rep(ID[i],nrow(filelist[i])

  }
Run Code Online (Sandbox Code Playgroud)

//基本上在filelist的每个数据框中创建一个新列,并用重复的相应ID值填充该列

我的输出应该是这样的:

filelist[1] 应该:

   x y SAmpleID
 1 1 a       1A
 2 2 b       1A
 3 3 c       1A
Run Code Online (Sandbox Code Playgroud)

fileList[2]

   x y SampleID
 1 4 d       IB
 2 5 e       IB
 3 6 f       IB
Run Code Online (Sandbox Code Playgroud)

等等.....

任何想法如何做到这一点.

r

36
推荐指数
4
解决办法
4万
查看次数

标签 统计

r ×1