2017-05-28 77 views
1

在R中,我想知道如何找到取樣值的索引/索引,以便使用函數示例。如何查找採樣值的索引?

在Matlab中,看起來很容易通過在函數datasample中請求輸出參數idx來完成。顯式地,從Matlab的文檔頁面採取功能datasample:

[Y,IDX] = datasample(數據中,k,...)返回指示 哪些值datasample從數據採樣的索引向量。

我想知道這樣的事情是否可以在R和如何完成。

實施例:

set.seed(12)

樣品(C(0.3,78,45,0.8,0.3,0.8,77),大小= 1,替換= TRUE)

0.3

我怎麼能知道這兩個0.3的的是那一個?

回答

1

我們可以創建一個名爲vector,然後sample

v1 <- c(LETTERS[1:10], LETTERS[1]) 
names(v1) <- seq_along(v1) 

v2 <- sample(v1, 20, replace=TRUE) 
as.integer(names(v2)) 
#[1] 10 11 4 2 1 4 6 9 1 1 2 9 2 2 2 3 4 7 3 6 

使用OP的數據

set.seed(12) 
v1 <- c(0.3,78,45,0.8,0.3,0.8,77) 
names(v1) <- seq_along(v1) 
set.seed(12) 
sample(v1, size=1, replace=TRUE) 
# 1 
#0.3 
+1

優秀的解決方案,非常感謝。然後可以使用函數名稱從採樣值中檢索索引號。 –