[问题] 分组问题

楼主: huangsam (sam)   2018-02-21 18:55:25
[问题类型]:
程式咨询(我想用R 做某件事情,但是我不知道要怎么用R 写出来)
[软件熟悉度]:
请把以下不需要的部份删除
使用者(已经有用R 做过不少作品)
[问题叙述]:
请简略描述你所要做的事情,或是这个程式的目的
想计算同个类组的比例
举例来说
> V1=c( "A","A","A","A","B", "B" ,"C", "C")
> V2= c( "A2","A3","A4","A5","A1", "B1" ,"A1", "C1")
> DTTEST <- data.frame(V1,V2)
> DTTEST
V1 V2
1 A A2
2 A A3
3 A A4
4 A A5
5 B A1
6 B B1
7 C A1
8 C C1
我想看V2这个字段中分群的关系,好比说A1出现两次有跟B1跟C1同群过
那是否有函数可以呈现以下
A1 A2 A3 A4 A5 B1 C1
A1 2 0 0 0 0 1 1
A2 0 1 1 1 1 0 0
A3 0 0 1 1 1 0 0
.
.
.
B1 1 0 0 0 0 1 0
作者: celestialgod (天)   2018-02-21 18:58:00
table(df$V1, df$V2)
作者: x88776544pc   2018-02-22 10:36:00
apply(df2, 2, function(x) if(sum(x)-1) {colSums(df2[x>0,])} else {df2[x>0,]} )如果每笔资料都是 unique, 矩阵乘法可以, 没想到 @@如果有可能重复的话, 我的结果还要再转置, 忘记了
楼主: huangsam (sam)   2018-02-22 11:22:00
x大谢谢你啊!!!!!!
作者: celestialgod (天)   2018-02-22 19:55:00
喔喔,原来我没看懂你要什么XDD

Links booklink

Contact Us: admin [ a t ] ucptt.com