楼主: pingguzh
10929 6

[问答] 请教怎么批量修改变量值 [推广有奖]

  • 0关注
  • 4粉丝

菜鸟

副教授

48%

还不是VIP/贵宾

-

威望
0
论坛币
3 个
通用积分
20.1546
学术水平
1 点
热心指数
7 点
信用等级
3 点
经验
20017 点
帖子
870
精华
0
在线时间
433 小时
注册时间
2012-10-29
最后登录
2024-1-28

楼主
pingguzh 发表于 2018-8-31 10:05:11 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
请教大家,我有一个数据集data,里面100个变量,每个变量的值都是3分类(0、1、2)
现在想把变量的值重新改变一下,0和1归为1, 2归为0,请问怎么批量对100个变量去操作呢?

谢谢大家!


二维码

扫码加我 拉你入群

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

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

关键词:变量值 Data 数据集

统计爱好

沙发
xbgames 在职认证  发表于 2018-8-31 10:12:48
replace x=1 if x==1|x==0
repalce x=0 if x==2是字符还是数值,自行处理。
已有 1 人评分论坛币 收起 理由
cheetahfly + 10 热心帮助其他会员

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

藤椅
pingguzh 发表于 2018-8-31 10:23:36
自己解决了,用as.matrix函数,没有使用循环就可以做到了

板凳
pingguzh 发表于 2018-8-31 10:24:10
xbgames,谢谢,但是这个做法只能单次,不能多个变量同时批量处理

报纸
jgchen1966 发表于 2018-8-31 21:35:49
## 同样,用dplyr包,很简单了:

  data%<>%dplyr::mutate_at(xv,~if_else(.x<2,1,0))
  ##    xv 为100变量名的字符型失量,如 xv<-c("X1","X2",......  "X100")
已有 1 人评分论坛币 收起 理由
cheetahfly + 10 精彩帖子

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

地板
jgchen1966 发表于 2018-8-31 21:39:41
jgchen1966 发表于 2018-8-31 21:35
## 同样,用dplyr包,很简单了:

  data%%dplyr::mutate_at(xv,~if_else(.x
用 mutate_at 较灵活,在数据框中,可选择性操作,又不破坏数据框结构。。
   

7
慎终君 在职认证  发表于 2020-8-28 10:28:55
phe$group[which(phe$group==1)] = 'BD'   
phe$group[phe$group==2] = 'SCH'     # 用不用which都可以

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-8 13:15