簡體   English   中英

根據R中的偽F計算p值

[英]Calculating p-value from pseudo-F in R

我正在使用一個非常大的數據集,其中包含18個變量的132,019個觀察值。 我已經使用clusterSim軟件包來計算使用Kohonen SOM創建的集群的偽F統計量。 我正在嘗試使用p值評估各種聚類大小(例如4、6、9個聚類),但是我得到的結果很奇怪,而且我對統計的了解還不足以了解正在發生的事情。

我使用以下代碼獲取偽F。

library(clusterSim)
psF6 <- index.G1(yelpInfScale, cl = som.6$unit.classif)
psF6
[1] 48783.4

然后,我使用以下代碼獲取p值。 當我做lower.tail = T我得到1 ;當我做lower.tail = F我得到0

k6 = 6
pf(q = psF6, df1 = k6 - 1, df2 = n - k6, lower.tail = FALSE)
[1] 0

我想我期望的不是整數,所以我對如何解釋結果感到困惑。 無論我評估哪個集群大小,我都可以獲得完全相同的結果。 我在計算中讀到了一些關於反轉df1df2的信息,但這似乎很奇怪。 另外,我正在使用的參考文本(Larose的“數據挖掘和預測分析”)使用它來評估k均值聚類,因此我想知道問題是否出在我正在使用Kohonen聚類。

我會檢查您的數據,但並非不可能將p值設為0或1。在您的情況下,假設您的數據正確無誤,則表明您的數據嚴重偏斜,並且創建的群集處於完美契合。 因此,當您執行lower.tail = FALSE時,p值零表示您的樣本被分類為100%准確度,並且沒有出錯的機會。 lower.tail = TRUE給出1表示您彼此非常接近地聚集。 換句話說,您的觀察結果彼此簇聚得很遠,在兩個尾部測試中為0,但是簇的中心點足夠接近,從而在一次尾部測試中ap值為1。 如果您是我,請嘗試使用具有不同距離參數“ w”的“ K均值分裂”變體,以查看數據的擬合度。 如果某些“ w”適合群集的非常低的p值,我認為沒有必要像SOM這樣復雜的模型。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM