簡體   English   中英

在 R 中測試 2D 分箱數據的多元正態性

[英]Test multivariate normality of 2D binned data in R

我有一些熱圖數據,我想知道該熱圖是圍繞我的圖像中間“居中”還是偏向一側(在 R 中)。 我的數據太大,無法在這里舉個例子,所以這是一些相同形式的假數據(但在現實生活中,我的intensity值不是均勻分布的,我假設它們是來自底層多元正態分布的分箱計數,但我沒有不知道如何將其編碼為可重現的示例)。

set.seed(42)
tibble(
  x = rep(0:7, each = 8),
  y = rep(0:7, 8),
  intensity = sample(0:10, 64, replace = TRUE)
)

示例原始熱圖

這里的x值是像素的水平索引, y值是像素的垂直索引, intensity是根據熱圖的像素值。 我已經設法通過邊緣化這些強度值並找到xy的邊緣化平均值來找到熱圖的“中心”,但是我將如何對基礎多元正態分布是否以某個點為中心進行假設檢驗? 在這種情況下,我想要一個測試統計量(更具體地說是一個 -log10 p 值),以確定生成此計數數據的基礎多元正態分布是否以點c(3.5, 3.5)為中心。

此外,我還想要一個關於生成計數數據的基礎分布是否實際上是多元正態分布的檢驗統計量(再次,更具體地說是 -log10 p 值)。

這是一個更大的管道的一部分,我想使用dplyrgroup_by一次對多個熱圖執行這個測試,所以如果可以保持整潔的格式,那就太好了。

稍微用谷歌搜索發現這個網頁建議mvnormtest::mshapiro.test

mshap <- function(z, nrow = round(sqrt(length(z)))) {
   mvnormtest::mshapiro.test(matrix(z, nrow = nrow))
}
mshap(dd$intensity)

如果你想讓它更整潔,你可以用 map/nest/etc 做一些事情。

我不太確定如何檢驗居中假設(使用mnormt::dmnorm的似然比檢驗?)

暫無
暫無

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

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