【发布时间】:2021-02-04 19:41:20
【问题描述】:
我有几个没有变量名称的数据框。他们都是不同的。我有一个列表,其中包含与每个数据框一起使用的一组列名称(列表项的名称与匹配的数据框相似)。我想分配/使用数据框中的列名。我尝试用循环做一些事情,然后 lapply 但我就是无法得到它。下面是我所说的一个例子。我为这里不完美的编码和解释道歉。我确信答案是我应该能够做到的。非常感谢任何帮助。
#Activate a package
library(rio)
##################################################
#Create data frames
dir.create("data/")
sec1<- data.frame(x1 = 1:5,
x2 =c("L","M","N","O","P"),
x3 = c(4, 1, 9, 0, 1))
#########
sec2<- data.frame(x1 = c("A","B","C","D","E"),
x2 = 1:5,
x3 = c(12, 10, 29, 0, 5))
#########
sec3<- data.frame(x1 = c(100, 21, 91, 53, 35),
x2 = 1:5,
x3 = c("W","X","Y","Z","A"))
#Export into folder as csv file
export(sec1,"data/sec1.csv")
export(sec2,"data/sec2.csv")
export(sec3,"data/sec3.csv")
#Clear out these files for now
rm(sec1,sec2,sec3)
###############################################
#Create a list of columns names
sec1<-c("A","B","C")
sec2<-c("AA","BB","CC")
sec3<-c("AAA","BBB","CCC")
#####
listAA<-list(sec1,sec2,sec3);listAA
rm(sec1,sec2,sec3)
#I was hoping to use loop command or lapply to use the list names for the data frames
【问题讨论】:
-
我看到了 3 个数据帧,写成 CSV,以及 3 个列名向量。我了解到您想将数据框列名称替换为
listAA中的名称。但我对创建数据帧/写入数据帧/rm()数据帧代码段感到困惑。只是为了树立榜样吗?您是否希望将这些列名应用于 CSV 文件(文件已更新),或者您是否希望读取这些示例 CSV 文件,并在此过程中应用列名?还是别的什么? -
是的,如有任何混淆,我们深表歉意。我将数据框保存为文件夹中的 csv 文件。 rm() 并不重要——我只是在创建示例时使用了它。我想使用 listAA 名称作为数据框列名称。它将更新数据框。再次为混乱感到抱歉。
-
通过“更新数据帧”,您是想在 R 的环境中更新它们以进行分析,还是更新硬盘上的 CSV 文件(或两者兼而有之)?
-
更新我硬盘上的 csv 文件。然后我会将数据与其他数据合并以进行分析。再次感谢您的帮助。
标签: r list dataframe columnname