更改数据框列表中的第一列

时间:2014-10-21 16:45:36

标签: r

我有一个数据框列表,我正在尝试使用lapply方法更改第一个colname

frames<-lapply(frames,function(x){ colnames(frames[[x]])[1]<-"date"})

正在返回错误

Error in `*tmp*`[[x]] : invalid subscript type 'list'

我不确定为什么它会产生这个错误,因为我的理解是这应该适用

colname[1]<-"date"

到列表中的每个数据框

如果有人能告诉我这个错误的根源,我将非常感激!

1 个答案:

答案 0 :(得分:5)

您无需引用frames内的lapply列表。您的函数将x视为列表中的元素frames。试试这个:

frames <- lapply(frames, function(x) { colnames(x)[1] <- "date"; return(x) })