Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 如何创建一个函数或循环来重命名24个数据帧的列?_R_Data Science - Fatal编程技术网

R 如何创建一个函数或循环来重命名24个数据帧的列?

R 如何创建一个函数或循环来重命名24个数据帧的列?,r,data-science,R,Data Science,我有24个数据帧,用于24年的商业流,它们都是这样的 t i j k v q 1 1997 4 12 90930 210.981000 160.433 2 1997 4 12 121190 2.614000 4.187 3 1997 4 20 570110 26.957000 2.500 4 1997 4 31 190211 3.747064 21.613 5 1997 4 31 252329 22.541865 626.0

我有24个数据帧,用于24年的商业流,它们都是这样的

   t i  j      k          v       q
1 1997 4 12  90930 210.981000 160.433
2 1997 4 12 121190   2.614000   4.187
3 1997 4 20 570110  26.957000   2.500
4 1997 4 31 190211   3.747064  21.613
5 1997 4 31 252329  22.541865 626.000
我需要将变量的名称分别更改为以下年份、产品、出口商、进口商、流量、t、I、j、k、v、q的数量

我正在使用下面的函数,但它不保存更改。当我运行代码时,它会给我新的数据帧和列的新名称的输出,但它不会在原始数据帧上被替换


我所要寻找的是最小化为实现这一点而写的行的数量,所以例如,做“BACI1995”P>,因此,如果你真的想要最小化击键的次数,那么考虑一下这一条:

for (i in 1995:2018) names(.GlobalEnv[[paste0("BACI", i)]]) <- c("Year", "Product", "Exporter", "Importer", "flow", "Quantity")

对于(1995:2018年的i)名称(.GlobalEnv[[paste0(“BACI”,i)])谢谢,这太棒了!ekoam,如果全球环境中除了BACI命名的对象之外还有其他对象,这会起作用吗?是的。这里
.GlobalEnv[[paste0(“BACI”,i)]
我们只从.GlobalEnv中选择那些命名为“BACI的对象*“。我们从未接触过.GlobalEnv中的任何其他对象。另一方面,考虑一个泛型for循环,其中计数器<代码> i>代码>也是存储在.GualAlEnv中的对象。对于每个循环,即使.GlobalEnv中有其他对象,计数器也会修改自身。你不觉得这和上面的情况相似吗@卡提克斯
for (i in 1995:2018) names(.GlobalEnv[[paste0("BACI", i)]]) <- c("Year", "Product", "Exporter", "Importer", "flow", "Quantity")