1
我想从数据集中获得pvalues。我没有任何问题使用pnorm,但我现在已经有了。数学函数的非数字参数
data(iris)
iris[,-5]<- scale(as.matrix(iris[,-5]))
# K-Means Cluster Analysis
fit <- kmeans(iris[,-5], 5) # 5 cluster solution
# get cluster means
aggregate(iris[,-5],by=list(fit$cluster),FUN=mean)
# append cluster assignment
mydata <- data.frame(iris, fit$cluster)
pval<- pnorm(iris[,-5])
在此之后,我得到的消息 “错误的pnorm(Q,平均,SD,lower.tail,log.p): 非数值参数数学函数”。
什么问题?我不明白为什么会发生这种情况。
请让我知道。
有可能通过使p值你的,但我不明白。为什么我上面写的方法不起作用?无论如何,谢谢你的回答。 – user3027252
@ user3027252函数通常只接受某些类型的对象作为参数。看看'?pnorm'。你必须传递一个数字向量,而不是数据帧。例如,你可以使用'sapply(iris [, - 5],pnorm)'来获得数据帧的每一列的值。 – Thomas
我之前使用过'pnorm',并且当时我成功地使用了'pnorm'。也许我意外地将数据框更改为矩阵,但它有像数据框一样的列名。也许必须有其他方法通过将数据帧转换为矩阵来在数据帧中使用pnorm。无论如何,我只是R的新手,我感谢你的帮助!美好的一天! – user3027252