楼主: hmy112233
2562 6

[问答] R语言 循环重命名数据框的列 报错 求助! [推广有奖]

  • 0关注
  • 0粉丝

高中生

67%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
85 点
帖子
7
精华
0
在线时间
59 小时
注册时间
2018-8-29
最后登录
2021-10-27

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
各位大神好!

我目前的问题是,想给test1~test10的数据框统一重命名列的标题,所有数据框都是11列。
标题也已经通过其它方式计算好,是test_name变量,长度也是11。

逐一实现的话,代码应该是:
names(test1) <- test_name
names(test2) <- test_name
...
names(test10) <- test_name

我写的循环代码是:

for (i in 1:10)
{
  names(paste("test", i, sep="") <- test_name
}


但是显示“target of assignment expands to non-language object”,请问该如何修改呢?刚刚入门,在其他地方也没有找到解决方法,希望能得到大神指教,十分感谢!!

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:R语言 数据框 Names test name

沙发
katymeala 发表于 2019-8-19 02:54:30 |只看作者 |坛友微信交流群
paste("test", i, sep="")是character,不是object,所以错了

解决方法

for (i in 1:10)
{
  tmp <- get(paste("test", i, sep=""))
  names(tmp) <- test_name
  assign(paste("test", i, sep="") ,tmp)
}
已有 1 人评分论坛币 收起 理由
cheetahfly + 10 热心帮助其他会员

总评分: 论坛币 + 10   查看全部评分

使用道具

藤椅
hmy112233 学生认证  发表于 2019-8-21 15:00:33 |只看作者 |坛友微信交流群
明白了,非常感谢您的回答!!

使用道具

板凳
hmy112233 学生认证  发表于 2019-8-21 15:00:54 |只看作者 |坛友微信交流群
katymeala 发表于 2019-8-19 02:54
paste("test", i, sep="")是character,不是object,所以错了

解决方法
明白了,非常感谢您的回答!!

使用道具

报纸
hmy112233 学生认证  发表于 2019-8-21 15:12:45 |只看作者 |坛友微信交流群
katymeala 发表于 2019-8-19 02:54
paste("test", i, sep="")是character,不是object,所以错了

解决方法
还想打扰您一下,如果我写成:

for (i in 1:10)
{
  names(get(paste("test", i, sep=""))) <- test_name
}

这样是不是也可以呢? 十分感谢!
已有 1 人评分论坛币 收起 理由
jiangbeilu + 4 鼓励积极讨论

总评分: 论坛币 + 4   查看全部评分

使用道具

地板
katymeala 发表于 2019-8-21 21:19:25 |只看作者 |坛友微信交流群
hmy112233 发表于 2019-8-21 15:12
还想打扰您一下,如果我写成:

for (i in 1:10)
不行,只是调用了object的内容,object本身没有改
已有 3 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
admin_kefu + 10 热心帮助其他会员
Sunknownay + 3 + 3 + 3 热心帮助其他会员
jiangbeilu + 5 精彩帖子

总评分: 论坛币 + 15  学术水平 + 3  热心指数 + 3  信用等级 + 3   查看全部评分

使用道具

7
hmy112233 学生认证  发表于 2019-8-24 14:35:56 |只看作者 |坛友微信交流群
katymeala 发表于 2019-8-21 21:19
不行,只是调用了object的内容,object本身没有改
大致明白了,太感谢您了!!

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-11-5 07:52