【发布时间】:2018-10-14 20:17:49
【问题描述】:
我有 20 个 excel 文件,其中包含每年的城市级数据。我将它们导入到一个列表中,因为我认为循环它们会更容易。 我想做的第一个任务是更改每个文件第二列的名称。 如果,对于单个文件,我这样做:
#data is a list of data tables/frames. Example:
data<-list(a = data.frame(1:2,3:4),b = data.frame(5:8,15:18) )
#renaming first column of a (works)
names(data[[1]])[2]<-"ABC"
我可以重命名该列。 要进行批量编辑,我想编写一个用于 lapply 的函数。该函数应该是上述东西的简单版本:
rename <-function(df){
names(df)[2]<-"XYZ"}
Rename(data[[1]]) 但是,对第二列没有任何作用。任何想法为什么?
【问题讨论】:
-
欢迎来到 SO。这个问题是不可重现的。请尝试创建一个小而完整的代表性示例,否则问题很可能会被关闭。这个stackoverflow.com/questions/5963269/… 可以帮助你做到这一点。该链接位于 SO R 常见问题解答stackoverflow.com/tags/r/info 中,所有新发帖者都应在发布前阅读该链接。
-
那些不是 data.tables。它们是数据框。
-
是的,我编辑了这个问题,对不起...但是如果你创建一个随机数据框也是一样的。
标签: r function dataframe lapply