我正在尝试在此矩阵的每一列上使用dmultinom
函数(如下所示)。因为我想计算三项概率,我想我可以在每一列上使用apply并在其中使用dmultinom(,prob=c(1,2,3))
作为FUN。然而,这不起作用。
apply(data,1,dmultinom(,prob = c(1,2,3)))
Error in dmultinom(,prob = c(1,2,3)) :
argument "x" is missing, with no default
我想我可以使用for循环遍历每一列并使用它来计算概率,但我认为应该有一种方法可以使用apply来解决它?
这是我的数据:
V1.Freq V2.Freq V3.Freq V4.Freq V5.Freq V6.Freq V7.Freq V8.Freq V9.Freq V10.Freq
1 31 31 31 31 31 31 31 31 31 31
2 152 152 152 152 152 152 152 152 152 152
3 21 21 21 21 21 21 21 21 21 21
答案 0 :(得分:2)
您可以尝试:
apply(data,2,dmultinom,prob=c(1,2,3))
注意:apply(data,1,..)
是行式的