GO言語でカイ二乗検定
homebrewでインストールできる。
brew install go
GOROOTはGOの実行ファイルのある場所。GOPATHはGOのワーキングディレクトリ。パッケージはGOPATH以下にインストールされる。初期設定では定義されない。$HOME/go
においている人が多いようだったのでそうする。
カイ二乗検定をやってみたい。以下のコマンドで統計に関する関数のパッケージがインストールされる。
go get -u gonum.org/v1/gonum/stat
カイ二乗検定をやってみる。
#Chisq.go
package main
import (
"fmt"
"gonum.org/v1/gonum/stat"
)
func main(){
var chisq float64
o := []float64{20, 10, 80, 90}
e := []float64{15, 15, 85, 85}
chisq = stat.ChiSquare(o, e)
fmt.Println(chisq)
}
実行結果
3.9215686274509802
検定も追加する。上記のパッケージには確率密度関数が含まれていないため、別のパッケージをインストールする。
go get -v github.com/atgjack/prob
#Chisq.go
package main
import (
"fmt"
"gonum.org/v1/gonum/stat"
"github.com/atgjack/prob"
)
func main(){
o := []float64{20, 10, 80, 90}
e := []float64{15, 15, 85, 85}
chisq := stat.ChiSquare(o, e)
dist := stat.ChiSquared{1.0}
fmt.Printf("Chi-squared value: %.5f\n", chisq)
fmt.Printf("P-value: %.5f\n", 1-dist.Cdf(chisq))
}
Chisqared value: 3.92157
P-value: 0.04767
コメント
コメントを投稿