Rufen Sie von JAVA aus R auf, um die Chi-Quadrat-Statistik und den p-Wert zu erhalten

Ich habe zwei 4 * 4-Matrizen in JAVA, wobei eine Matrix beobachtete und die andere erwartete Anzahl enthält.

Ich benötige eine automatisierte Methode, um den p-Wert aus der Chi-Quadrat-Statistik zwischen diesen beiden Matrizen zu berechnen. JAVA hat jedoch meines Wissens keine solche Funktion.

Ich kann das Chi-Quadrat und seinen p-Wert berechnen, indem ich die beiden Matrizen in R als CSV-Dateiformate einlese und dann die Funktion chisq.test wie folgt verwende:

obs<-read.csv("obs.csv")
exp<-read.csv("exp.csv")
chisq.test(obs,exp)

Dabei würde das Format der CSV-Dateien wie folgt lauten:

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

Mit diesen Befehlen gibt R das folgende Format aus:

X-squared = 20.6236, df = 9, p-value = 0.01443

welches den p-Wert einschließt, den ich suchte.

Kennt jemand einen effizienten Weg, um den Prozess von:

1) Ausgeben meiner Matrizen aus JAVA in CSV-Dateien 2) Hochladen der CSV-Dateien in R 3) Aufrufen des chisq.test für die CSV-Dateien in R 4) Zurückgeben des ausgegebenen p-Werts in JAVA?

Danke für jede Hilfe ....

Antworten auf die Frage(6)

Ihre Antwort auf die Frage