R pnorm中的错误-“;“数学函数的非数值参数”;

R pnorm中的错误-“;“数学函数的非数值参数”;,r,p-value,R,P Value,我有一个大型csv文件,其中包含80000多条列联表记录,下面是第一条记录: test = data.frame(a=1, b=0, c=1, d=2014, R1=1, R2=2015, C1=2, C2=2014, n=2016, sampleMean=2015, popMean=2, sdErr=2015, tScore=0.999049881) 鉴于此 z=p_cap-p/sqrt(p*(1-p)/n) test.stat=test$a/test$n-

我有一个大型csv文件,其中包含80000多条列联表记录,下面是第一条记录:

test = data.frame(a=1, b=0, c=1, d=2014, R1=1, R2=2015, C1=2, C2=2014,
                 n=2016, sampleMean=2015, popMean=2, sdErr=2015, tScore=0.999049881)
鉴于此

z=p_cap-p/sqrt(p*(1-p)/n)

test.stat=test$a/test$n-test$popMean/sqrt(test$sdErr)
其计算结果为
-0.04405856
。使用
pnorm
函数计算
pValue

pValue=pnorm(test.stat,mean=test$sampleMean,sd=test$sdErr,lower.tail=TRUE)
。但我得到了以下错误:

数学函数的非数值参数

在以下参数上运行命令时,没有错误:

pValue = pnorm(test.stat, mean=0, sd=1, lower.tail=TRUE)
pValue
[1] 0.4824289
这个错误意味着什么?如何避免它

为了避免用相同的数据发布另一个问题,我对标准误差有疑问。它和标准差一样吗?在我的参考书中,标准误差计算为
test$a*sqrt(test$n)

提前感谢您的帮助

你写过:

sd=test$sdError
你应该说:

sd=test$sdErr

@ilanman感谢您的编辑。如果您有两个问题,最好问两个问题。@JeremyMiles我认为重复相同的数据是多余的。由于第二个问题与第一个问题的背景密切相关,我认为这样做是可以的。再次感谢。如果你解决了这个问题,答案毫无意义。为什么?请你进一步澄清。你问了一个关于你的代码有什么问题的问题。我回答了。然后编辑问题,使代码没有问题。这个问题不再是问题了。