-2
z评分我有一个样本数据帧:计算中的R
data<-data.frame(a=c(1,2,3),b=c(4,5,5),c=c(6,8,7),d=c(8,9,10))
而且要计算在数据帧中的Z值的每一行并做:
scores<-apply(data,1,zscore)
我用zscore从
install.packages(c("R.basic"), contriburl="http://www.braju.com/R/repos/")
功能,获得该
row.names V1 V2 V3
a -1.2558275 -1.2649111 -1.0883839
b -0.2511655 -0.3162278 -0.4186092
c 0.4186092 0.6324555 0.2511655
d 1.0883839 0.9486833 1.2558275
但是当我尝试手动计算z值的数据帧I获得以下值的第一行:
-1.45 -0.29 0.4844, 1.25
手动,对于第一行,我计算如下:
1)计算第一行的行平均值(4.75)
2)从行平均值中减去每个值(例如, 4.75-1。,4.75-4。,4.75-6。,4.75-8)
3)各方差。
4)在第1行
5把它们加起来并除以样品的量),因此我得到的方差(回答= 6.685),然后得到的第一行的标准偏差(2.58)单独
6)然后应用z分数的公式。
这个'zscore'函数是什么?这是你写的东西?或者它在一个包里? –
**“我可以知道哪里出错了?”**这是一个非常模糊的问题。您需要指出(1)您如何手动计算值以及(2)如何定义“zscore”。你从apply函数得到的值是正确的(w.r.t.你显示的data.frame),所以我猜测错误在于(#1) –
也许你的意思是'scale'函数?请分享您如何通过手工计算价值。 – daroczig