簡體   English   中英

在R中的表中查找最大值

[英]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.

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