【发布时间】:2014-06-16 15:42:40
【问题描述】:
我有多个列,我想找出一列在其他列中的百分比是否相同。例如;
ST cd variable
1 1 23432
1 1 2345
1 2 908890
1 2 350435
1 2 2343432
2 1 9999
2 1 23432
所以我想做的是:
如果 ST 和 cd 相同,则求该行的变量占所有具有相同 ST 和 cd 的百分比。所以最后它看起来像:
ST cd variable percentage
1 1 23432 90.90%
1 1 2345 9.10%
1 2 908890 25.30%
1 2 350435 9.48%
1 2 2343432 65.23%
2 1 9999 29.91%
2 1 23432 70.09%
如何在 R 中做到这一点?
感谢大家的帮助。
【问题讨论】:
-
见
?ave。类似ave(var, ST, cd, FUN = prop.table) -
您想使用这些百分比进行进一步处理还是您需要的最终输出?请注意,如果您在值中添加 % 符号,则该列将被强制转换为字符,因此对于进一步的数字运算没有用处。