全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
1279 5
2015-03-03
悬赏 10 个论坛币 已解决
问题1:区域维度有3维、4维的,如果4维包含在3维下面,怎么将将两者合并到3维;
原始数据:数据框q有变量a:
a                                                  
安徽/中国/亚洲                           
合肥/安徽/中国/亚洲                    
浙江/中国/亚洲                             
安徽/中国/亚洲                           

希望通过用R分析得出结果:
新增变量b:对a进行重分类:
a                                                   b
安徽/中国/亚洲                   安徽/中国/亚洲
合肥/安徽/中国/亚洲           安徽/中国/亚洲
浙江/中国/亚洲                   浙江/中国/亚洲  
安徽/中国/亚洲                   安徽/中国/亚洲

问题2: 变量a里面,怎么只保留“合肥安徽中国亚洲”,其他三个样本不取?

最佳答案

ofzhengyi 查看完整内容

代码: #输入数据 q
二维码

扫码加我 拉你入群

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

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

全部回复
2015-3-3 21:34:12
代码:
#输入数据
q<-NULL
q$a<-c("安徽/中国/亚洲","合肥/安徽/中国/亚洲","浙江/中国/亚洲","安徽/中国/亚洲")
q<-data.frame(q,stringsAsFactors=FALSE)
#数据分析
q$b<-sapply(strsplit(q$a,"/"),function(x)paste(x[(length(x)-2):length(x)],collapse="/"))

输出:
                    a              b
1      安徽/中国/亚洲 安徽/中国/亚洲
2 合肥/安徽/中国/亚洲 安徽/中国/亚洲
3      浙江/中国/亚洲 浙江/中国/亚洲
4      安徽/中国/亚洲 安徽/中国/亚洲

唉,为了回答你的问题,我袜子都没洗呢~
上面代码怎么会乱码,上传附件吧~
renda.zip
大小:(351 Bytes)

 马上下载

本附件包括:

  • renda.r


二维码

扫码加我 拉你入群

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

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

2015-3-4 09:16:54
其实问题1和问题2都可以一次性解决:
从目前的数据来看,你可以split每个字符串,通过判断子字符串个数去做
二维码

扫码加我 拉你入群

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

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

2015-3-4 12:41:54
水天一色DIY 发表于 2015-3-4 09:16
其实问题1和问题2都可以一次性解决:
从目前的数据来看,你可以split每个字符串,通过判断子字符串个数去做 ...
可以具体写个程序么?
二维码

扫码加我 拉你入群

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

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

2015-3-5 08:30:18
ofzhengyi 发表于 2015-3-3 21:34
代码:
#输入数据
q
非常感谢!热心人哈!
袜子扔进洗衣机就可以了嘛
二维码

扫码加我 拉你入群

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

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

2015-3-5 12:34:31
ofzhengyi 发表于 2015-3-3 21:34
代码:
#输入数据
q
有两个小问题请教下:
1、我的数据是这样的,该变量存在于数据框中(有多个变量),属性是factor,怎么转换为char呢?

2、如果只筛选四层的样本,怎么处理?

谢谢!
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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