2012-12-05 46 views
0

我有10個字母「a b c d e f g h i j」和200個數字從1到200以及不同數量的實例。五個1s三個2s等共200個數字。將10個字母平均分配給200個字母

我想爲每個數字分配一個字母,使每個字母具有相同的頻率。

所以在這種情況下,我想每個字母的20個實例。

我的問題是我想隨機給字母賦數字。

一個例子是:

1 1 1 1 1 2 2 3 3 3 3 3 3 4 5 6 7 7 7 ...until 200 

a a a a a e e f f f f f f d i j c c c ...until 200 
+1

請問您可以重新生成您的數據示例嗎?並通過您期望的結果的示例生成。 – agstudy

+0

我編輯了這個問題,我不能提供樣本數據,但我希望現在清楚,我也有預期的結果作爲例證 – user1723765

回答

2

開始this--我故意不覆蓋現有列A

Rgames> B<-sample(letters,10) 
Rgames> B 
[1] "b" "m" "l" "v" "c" "t" "s" "i" "n" "j" 
Rgames> A<-sample(1:10,10,replace=TRUE) 
Rgames> A 
[1] 3 3 2 8 1 5 5 8 2 6 
Rgames> A.new<-B[A] 
Rgames> A.new 
[1] "l" "l" "m" "i" "b" "c" "c" "i" "m" "t" 

,那麼你可以cbind如果需要結合A.newA

+0

感謝您的幫助,我不太清楚這是做什麼。我編輯了這個問題,使其更易於理解。我感謝您的幫助。 – user1723765

+0

我想我確實做了你想做的事情:選擇一個隨機字母(你現在想要一個數字,它是一樣的),並將它應用到任何地方,在'A'中出現某個值。如果你在解釋'B [A]'時遇到問題,那麼你應該閱讀關於R語言的介紹性教程。 –

+0

是的,這是一個很好的解決方案,唯一的問題是我想要平均分配字母。因此,例如,我有200個來自A和10個來自B,然後每個B的值爲200/10 – user1723765