全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
35350 5
2014-11-21
我想统计变量a在3个水平下分别的四分位数,请问如何实现,谢谢!

a

level

4

1

6

1

3

1

9

1

7

1

5

1

5

1

8

1

6

1

5

2

7

2

4

2

9

2

7

2

3

2

5

2

7

2

3

2

7

2

8

3

6

3

4

3

9

3

3

3

8

3

6

3

2

3

7

3


二维码

扫码加我 拉你入群

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

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

全部回复
2014-11-21 09:22:54
a <- c(4,6,3,9,7,5,5,8,6,5,7,4,9,7,3,5,7,3,7,8,6,4,9,3,8,6,2,7)
b <-c(1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3)
pf <- factor(b)
tapply(a,pf,quantile)

新手学习中,如有错误请各位指正
二维码

扫码加我 拉你入群

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

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

2014-11-24 11:10:45
dataorz 发表于 2014-11-21 09:22
a
谢谢,请问有没有办法算不是标准的分位数,比如说20%分位数?
二维码

扫码加我 拉你入群

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

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

2014-11-24 11:22:30
tapply(a,pf,function(x) {return(quantile(x,probs=c(0,0.2,0.4,0.6,0.8,1)))})
probs 任意自己设定
二维码

扫码加我 拉你入群

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

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

2014-11-24 11:29:39
自己编写一下关于quantile的函数就可以实现了,比如我要实现20%分位数统计:编写一个qt20的函数,然后应用到dataorz的代码中即可。代码如下:
复制代码

二维码

扫码加我 拉你入群

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

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

2014-11-24 14:26:01
jiangbeilu 发表于 2014-11-24 11:29
自己编写一下关于quantile的函数就可以实现了,比如我要实现20%分位数统计:编写一个qt20的函数,然后应用到 ...
聪明!
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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