我有以下数据,并想计算每一个数据并将其放在另一列中。
输入:
col1 col2 col3 col4
A a a a a
B a c c c
C a b b c
D a - b c
E b - b c
所以输出看起来像:
col1 col2 col3 col4 count
A a a a a a
B a c c c a,c
C a b b c a,b,c
D a - b c a,b,c,-
E b - b c b,c,-
答案 0 :(得分:3)
一种解决方案是使用apply
dt$count <- apply(dt,1,function(x)I(unique(x)))
col1 col2 col3 col4 count
A a a a a a
B a c c c a, c
C a b b c a, b, c
D a - b c a, -, b, c
E b - b c b, -, c
如果你对结果进行排序,可能输出更好,但不完全是你想要的结果:
dt$count <- apply(dt,1,function(x)I(sort(unique(x))))
col1 col2 col3 col4 count
A a a a a a
B a c c c a, c
C a b b c a, b, c
D a - b c -, a, b, c
E b - b c -, b, c