楼主: hkhorsetrack
1468 4

[问答] 如何实现將分组項數,累计,平均值在新建欄位展示 [推广有奖]

  • 0关注
  • 0粉丝

本科生

15%

还不是VIP/贵宾

-

威望
0
论坛币
49 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
336 点
帖子
26
精华
0
在线时间
95 小时
注册时间
2018-4-5
最后登录
2020-6-13

楼主
hkhorsetrack 发表于 2018-4-5 19:45:44 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
各位大大好,

假如有如下数据,
index

name

amount

1

A

10

2

B

14

3

C

3

4

A

4

5

A

15

6

C

9

7

B

12

8

C

6

9

A

7


要实现效果如下

index

name

amount

分組項數

分組累计

分組平均

1

A

10

4

36

9

2

B

14

2

26

13

3

C

3

3

18

6

4

A

4

4

36

9

5

A

15

4

36

9

6

C

9

3

18

6

7

B

12

2

26

13

8

C

6

3

18

6

9

A

7

4

36

9


循环怎弄 ?
还是不用
循环, 各位有什么好的办法


二维码

扫码加我 拉你入群

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

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

关键词:如何实现 平均值 amount Index name

沙发
qoiqpwqr 发表于 2018-4-5 20:46:20
  1. dat <- data.frame(index = 1:9, name = c("A", "B", "C", "A", "A", "C", "B", "C", "A"), amount = c(10,14,3,4,15,9,12,6,7))
  2. dat$length <- ave(dat$amount, dat$name, FUN = length)
  3. dat$total <- ave(dat$amount, dat$name, FUN = sum)
  4. dat$average <- ave(dat$amount, dat$name, FUN = mean)
复制代码

藤椅
qoiqpwqr 发表于 2018-4-5 20:50:14
Untitled.png

Untitled.png (10.32 KB)

Untitled.png

已有 1 人评分论坛币 收起 理由
cheetahfly + 20 精彩帖子

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

板凳
hkhorsetrack 发表于 2018-4-5 20:59:50
感謝.
我這邊第二行公式要改這樣才有我要的結果.
dat$length <- ave(dat$amount, dat$name, FUN = length)
不過还是再次感謝

报纸
qoiqpwqr 发表于 2018-4-5 21:08:11
hkhorsetrack 发表于 2018-4-5 20:59
感謝.
我這邊第二行公式要改這樣才有我要的結果.
dat$length
你说的对,我改了一下

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

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