楼主: maiweijie4321
6389 12

[问答] 从数据集data中按某个因子变量筛选符合条件的数据。 [推广有奖]

  • 0关注
  • 0粉丝

硕士生

0%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0.2148
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
817 点
帖子
65
精华
0
在线时间
147 小时
注册时间
2017-12-6
最后登录
2021-4-14

楼主
maiweijie4321 发表于 2018-5-29 12:37:51 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我这边有一个数据集集,大概有2万行数据,有两个变量为x1,x2,其中,x1为字符串型,x2为因子型,其中,levels(data$x2)=747,也就是x2为747个层次。现在,我从数据集data中按照x2层次分别提取数据子集,使得一共有747个子集。如果用which来选,那要做747次。请问哪位人大的师兄能帮下小妹吗?
感激不尽!!!

二维码

扫码加我 拉你入群

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

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


沙发
jgchen1966 发表于 2018-5-29 15:49:00
  用tidyr::nest()  轻松解决,具体见其说明。。

藤椅
maiweijie4321 发表于 2018-5-29 15:57:22
jgchen1966 发表于 2018-5-29 15:49
用tidyr::nest()  轻松解决,具体见其说明。。
变量x2是一个"100","101",..."747",的值,每一个值在数据库data中都对于多个行,我就是想把对于的行抽出来组成子集。你能帮下我吗?

板凳
jgchen1966 发表于 2018-5-29 16:10:27
maiweijie4321 发表于 2018-5-29 15:57
变量x2是一个"100","101",..."747",的值,每一个值在数据库data中都对于多个行,我就是想把对于的行抽出来 ...
不知目的,也无法有具体的解:最简单的:

  data%<>%group_by(x2)%>%nest(.key=mysubdata)%>%ungroup()
已有 1 人评分论坛币 收起 理由
cheetahfly + 10 热心帮助其他会员

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

报纸
maiweijie4321 发表于 2018-5-29 16:22:24
jgchen1966 发表于 2018-5-29 16:10
不知目的,也无法有具体的解:最简单的:

  data%%group_by(x2)%>%nest(.key=mysubdata)%>%ungroup()
具体类似这样:data数据集如下图: QQ截图20180529162028.png
我就是想把因子x2下的值101对于的数据子集提取出来,102的也提取出来,103的也提取出来,...,形成747个子集

地板
jgchen1966 发表于 2018-5-29 16:36:16
data%<>%group_by(x2)%>%nest(.key=mysubdata)%>%ungroup()
上述程序已形成你所要的747个子集,放在data中列mysubdata中了。。就瞧你如何用了??  
按本人对数集操作的理解与应用,,根本无需从data中再取出来了,在其中可作任何R运算了,并且永远保留了其“身份与来源”。。。

7
maiweijie4321 发表于 2018-5-29 16:39:20
jgchen1966 发表于 2018-5-29 16:36
data%%group_by(x2)%>%nest(.key=mysubdata)%>%ungroup()
上述程序已形成你所要的747个子集,放在data中 ...
我不理解nest是什么意思?可以讲明白点吗?

8
jgchen1966 发表于 2018-5-29 16:41:43
maiweijie4321 发表于 2018-5-29 16:39
我不理解nest是什么意思?可以讲明白点吗?
请瞧tidy 包中nest函数说明及其实例,其已说的很明白了。。

9
maiweijie4321 发表于 2018-5-29 16:48:45
jgchen1966 发表于 2018-5-29 16:41
请瞧tidy 包中nest函数说明及其实例,其已说的很明白了。。
那为什么还要用ungroup呢?

10
jgchen1966 发表于 2018-5-29 17:01:33
maiweijie4321 发表于 2018-5-29 16:48
那为什么还要用ungroup呢?
恢复数据原貌而已:如果不再需要被修改的数据特征,就该恢复至修改前的状态。这是数据分析与清理的本人原则之一吧。。你可不这样做。。

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-2-8 05:07