[英]Finding top values in a table in R
我想知道如何在表中找到給出最高值的變量對。
例如,我有5個數字列的文件“ mydata”。 如果運行cor(mydata)
,它將顯示所有可能的相關性。 我想知道那些高度相關的對。 我嘗試使用sort(cor(mydata))
,但是可以理解,這給了我一個有序值的向量。 那么我怎么知道哪個對負責某個值呢?
PS:我不確定如何插入示例,我嘗試過發布圖片,但沒有必要的要點¬¬
假設如果我有一個包含2個變量A和B的表,則排序輸出為:
[1] 0.5 0.5 1.0 1.0
在這種情況下,很容易知道0.5來自A和B對,但是當涉及兩個以上變量時,我怎么知道呢?
我認為which(..., arr.ind = TRUE)
會有所幫助。
which
可以采取向量,矩陣或數組作為參數。 默認情況下( arr.ind = FALSE
),它將輸出簡化為向量,但是如果您改為設置arr.ind = TRUE
(並且數據具有dim
屬性,即矩陣,data.frame或數組),則它將將尊重源數據的維度,並更精確地告訴您在哪里可以找到所需的元素。
set.seed(42)
dat <- matrix(rbinom(25, 5, 0.5), ncol = 5)
which(dat > 3, arr.ind = TRUE)
## row col
## [1,] 1 1
## [2,] 2 1
## [3,] 4 1
## [4,] 3 3
## [5,] 1 4
## [6,] 2 4
## [7,] 1 5
## [8,] 3 5
## [9,] 4 5
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.