【发布时间】:2013-04-07 19:57:23
【问题描述】:
我在 JAVA 中有两个 4*4 矩阵,其中一个矩阵保存观察到的计数,另一个保存预期计数。
我需要一种自动方法来计算这两个矩阵之间的卡方统计量的 p 值;但是,据我所知,JAVA 没有这样的功能。
我可以通过将两个矩阵作为 .csv 文件格式读取到 R 中,然后使用 chisq.test 函数来计算卡方及其 p 值,如下所示:
obs<-read.csv("obs.csv")
exp<-read.csv("exp.csv")
chisq.test(obs,exp)
.csv 文件的格式如下:
A, C, G, T
A, 197.136, 124.32, 63.492, 59.052
C, 124.32, 78.4, 40.04, 37.24
G, 63.492, 40.04, 20.449, 19.019
T, 59.052, 37.24, 19.019, 17.689
给定这些命令,R 将给出以下格式的输出:
X-squared = 20.6236, df = 9, p-value = 0.01443
其中包括我正在寻找的 p 值。
有谁知道自动化流程的有效方法:
1) 将我的矩阵从 JAVA 输出到 .csv 文件 2) 将 .csv 文件上传到 R 3) 将 .csv 文件上的 chisq.test 调用到 R 中 4) 将输出的 p 值返回到 JAVA 中?
感谢您的帮助....
【问题讨论】:
-
感谢您的链接。我正在将此代码提交给老师。这种方法是否意味着她需要将一些东西下载到她的计算机上才能运行我的代码。如果是这样,是否有替代方案不会强制这样做?再次感谢!!
标签: java r statistics chi-squared