【发布时间】:2020-02-21 20:18:43
【问题描述】:
我有一个包含 1000 行和 10000 列的大型数据集。我用以下代码给出一个简短的例子:
V1 = c(1,2,1,1,NA,1,0,2,2,1,0)
V2 = c(0,2,NA,2,1,2,0,1,NA,0,0)
V3 = c(3,1,1,1,NA,1,0,2,2,1,2)
V4 = c(1,2,NA,1,0,2,0,2,NA,2,0)
datos =data.frame(cbind(V1,V2,V3,V4))
我的每一列都有值 =“0”、“1”或“2”。我需要得到每列中“0”和“1”的频率。请注意,数据集也有“NA”值,我不必考虑估计频率。
例如对于 V1,“0”的频率是 = 2/10 = 0,2,而“1”的频率是 = 5/10 = 0,5。所以总和是 0,2 + 0,5 = 0,7。
我认为apply(datos, 2, x) 可以提供帮助,但我不确定function (x) 怎么可能。
有人知道解决这个问题的方法吗?
谢谢
【问题讨论】: