楼主: 千车麦穗
1717 13

[学习分享] 实现分组计算 [推广有奖]

  • 5关注
  • 0粉丝

已卖:1份资源

博士生

0%

还不是VIP/贵宾

-

威望
0
论坛币
89 个
通用积分
6.7270
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
1864 点
帖子
84
精华
0
在线时间
292 小时
注册时间
2019-4-22
最后登录
2025-10-22

楼主
千车麦穗 发表于 2020-1-13 21:34:42 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
各位好,我有一个数据框df, 360截图1641011669100108.jpg ,分组计算y中元素在对应的x组中的比值,效果如: 360截图163607288510781.jpg

  1. df<-data.frame(Date=c("May","June","July","May","June","May","June","July","Aug"),
  2.                x=c(rep("A",3),rep("B",2),rep("C",4)),
  3.                y=c(4,2,3,4,6,4,2,3,2))
  4. df
  5. df2<-df%>%group_by(x)%>%summarise_each(funs('z'=sum),y)
  6. df3<-df%>%left_join(df2)%>%mutate(ratio=y/z)
  7. df3
复制代码

感觉我的代码好麻烦啊,请问有没有简单一点的方法呢?谢谢
二维码

扫码加我 拉你入群

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

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


沙发
5752 发表于 2020-1-14 11:08:58
df%>%group_by(x) %>% mutate(ratio=y/sum(y))
已有 1 人评分论坛币 收起 理由
cheetahfly + 10 热心帮助其他会员

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

藤椅
千车麦穗 发表于 2020-1-14 11:40:14
5752 发表于 2020-1-14 11:08
df%>%group_by(x) %>% mutate(ratio=y/sum(y))
谢谢,但您算的是y中各数值占总和的比例,但我想算的是数值在各个分组中的比例……

板凳
5752 发表于 2020-1-14 12:44:24
千车麦穗 发表于 2020-1-14 11:40
谢谢,但您算的是y中各数值占总和的比例,但我想算的是数值在各个分组中的比例……
不明白你的意思

报纸
cheetahfly 在职认证  发表于 2020-1-14 19:45:43
二楼正解

地板
nieqiang110 学生认证  发表于 2020-1-14 19:55:40
千车麦穗 发表于 2020-1-14 11:40
谢谢,但您算的是y中各数值占总和的比例,但我想算的是数值在各个分组中的比例……
df%>%group_by(x) %>% mutate(ratio=y/sum(y))是对的,你好好验算

7
nieqiang110 学生认证  发表于 2020-1-14 19:55:45
千车麦穗 发表于 2020-1-14 11:40
谢谢,但您算的是y中各数值占总和的比例,但我想算的是数值在各个分组中的比例……
df%>%group_by(x) %>% mutate(ratio=y/sum(y))是对的,你好好验算

8
nieqiang110 学生认证  发表于 2020-1-14 19:56:06
千车麦穗 发表于 2020-1-14 11:40
谢谢,但您算的是y中各数值占总和的比例,但我想算的是数值在各个分组中的比例……
df%>%group_by(x) %>% mutate(ratio=y/sum(y))是对的,你好好验算

9
千车麦穗 发表于 2020-1-14 21:43:31
5752 发表于 2020-1-14 12:44
不明白你的意思
您好,我想达到的效果是红框内的比值加起来等于1,是第三列在各自分组中的比值。 360截图16491211624761.jpg 而您的代码运行结果是总的比值加起来为1. 360截图1625111687114116.jpg

10
千车麦穗 发表于 2020-1-14 21:57:08
谢谢各位老师,二楼的好用!我重新安装了一遍dplyr包就好用了

360截图1625111687114116.jpg (16.84 KB)

360截图1625111687114116.jpg

360截图16491211624761.jpg (20.86 KB)

360截图16491211624761.jpg

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

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