2014-08-29 85 views
-1

我有一個10x5矩陣。五列中的每一列都被命名。如何重複R中特定頻率的列名稱

我需要建立一個這樣的載體:

c(rep(colnames(mymatrix)[1], dim(mymatrix)[1]), 
    rep(colnames(mymatrix)[2], dim(mymatrix)[1]), 
... 
    rep(colnames(mymatrix)[5], dim(mymatrix)[1])) 

但是,如果我有一個不同的列數?如何在不使用for循環的情況下自動執行此操作?

謝謝!

+1

你叫什麼規則? r無法猜出你想要每次重複多少次 – rawr 2014-08-29 17:45:12

+0

你是否真的運行過這段代碼? – 2014-08-29 17:46:34

+0

是的,所以我現在的矩陣是10x5。我想要一個長度爲50的矢量。前10個條目是第一個列名稱。接下來的10個條目是下一個列名稱。等我需要自動化這個可變數量的列名和行 – user1357015 2014-08-29 17:47:32

回答

1

您可以用each參數rep做到這一點:

rep(colnames(mymatrix), each=dim(mymatrix)[1]) 

要看到這是如何工作的,你可以嘗試:

v = c("h", "e", "l", "l", "o") 
rep(v, each=5) 
# [1] "h" "h" "h" "h" "h" "e" "e" "e" "e" "e" "l" "l" "l" "l" "l" "l" "l" "l" "l" 
# [20] "l" "o" "o" "o" "o" "o"