全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
1972 3
2017-03-03
R语言中假设有一个dataframe A, 其中有一列a有30个类别(1-30),另一列b有5个类别(1-5),其中属性b根据属性a得到,例如若a为(1,3,4,5,7,16)b为1,a为(2,24,28,30)b为2
有没有比较简洁的方式可以快速的根据a给b赋值,麻烦附上代码谢谢

二维码

扫码加我 拉你入群

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

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

全部回复
2017-3-4 06:14:58
以后问问先构建一个数据框吧。或举出具体的例子来。要不理解起来困难。
复制代码
二维码

扫码加我 拉你入群

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

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

2017-3-4 06:15:23
A$b[A$a%in%c(1,3,4,5,7,16)]<-1
A$b[A$a%in%c(2,24,28,30)]<-2
二维码

扫码加我 拉你入群

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

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

2017-3-4 17:55:45
我这里有一个比较向量化的思路:
# 建一指标用向量
ind <- vector(length = 30)
ind[c(1, 3, 4, 5, 7, 16)] <- 1
ind[c(2, 24, 28, 30)] <-2
......
#赋值
A$b <- ind[A$a]
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群