【发布时间】:2014-05-08 16:56:13
【问题描述】:
发现了几个关于在数据框中更改列名的问题,但没有回答我遇到的问题。
我正在循环读取许多 excel 文件作为数据框,对每个数据框的数据进行一些分析并移动下一个数据框。在每个数据框中,我需要重命名名称以 00010 结尾的列。列的位置在每个文件/数据框中都会发生变化。
例如导入的列名称为:agency_id、site_no、datetime、tz_cd、11_00010、11_00010_cd、12_00030、12_00030_md、...
对于我的分析,我需要以下列:site_no、datetime、11_00010、12_00030。我需要将列 11_00010 重命名为温度,将列 12_00030 重命名为盐度。如果它们的顺序相同,我可以使用plyr 或colnames 或names 中的rename 轻松重命名列。但是,每个数据框中的列的顺序或顺序并不相同,包含 00010 和 00030 的列可能以不同的数字开头,因此 00010 和 00030 在列名中的位置并不总是固定的。如果改名会更容易。另外,我不需要名称包含 00010 或 00030 但以 cd 或 md 等结尾的列。
真的很感激。
【问题讨论】: