首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >仅命名列表中多个数据框中的一列

仅命名列表中多个数据框中的一列
EN

Stack Overflow用户
提问于 2018-06-07 04:49:00
回答 1查看 50关注 0票数 0

我有一个有7个数据框的列表,每个人都有相同的列("DATE","PRECIPITACION"),所以我只想以升序的方式重命名第二列("PRECIPITACION"),即PRECIPITACION_1,PRECIPITACION_2,...,PRECIPITACION_7,我试一下这个

代码语言:javascript
复制
my.files <- list.files(pattern = ".csv")
my.files <- mixedsort(my.files)
my.data <- lapply(my.files,
              read.csv,
              header = TRUE, sep = ";", dec = ",")

对于我的特定DF:

代码语言:javascript
复制
data.Precip <- rbind(my.data)[1:7]

对于重命名第二列:

代码语言:javascript
复制
colnames(data.Precip[[1]]) = paste(colnames(data.Precip[[1]]), "1", sep = "_")

但上述代码仅适用于单个数据帧

对此有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-07 06:11:43

您可以使用for语句使用当前循环索引设置顺序名称,然后使用列号更新第二列(不确定这是否是您想要做的):

代码语言:javascript
复制
for(i in 1:length(data.Precip))
    colnames(data.Precip[[i]])[2] = paste(colnames(data.Precip[[i]])[2], i, sep = "_")
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50729367

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档