簡體   English   中英

使用 R 創建數字和字母的順序列表

[英]Creating a sequential list of numbers and letters with R

此問題與之前提出的有關創建連續字母列表的問題有關 我目前正在嘗試創建一個按數字和字母順序升序的變量列表。 基本上我想要一個這樣的列表:

"var_1A" "var_1B" var_"1C" "var_1D" "var_2A" "var_2B" var_"2C" "var_2D"

我可以輕松地創建一個按數字遞增的變量列表

paste("var_", 1:2, "A", sep="")

或按字母順序

paste("var_1", letters[1:4], sep="")

但結合這兩個收益:

paste("var_", 1:2, letters[1:4], sep="")
[1] "var_1a" "var_2b" "var_1c" "var_2d"

我怎樣才能得到上面想要的結果?

foo <- expand.grid(1:2, LETTERS[1:4])
paste0("var_", foo[,1], foo[,2])

[1] "var_1A" "var_2A" "var_1B" "var_2B" "var_1C" "var_2C" "var_1D" "var_2D"

你可以使用outer

c(t(outer(paste0("var_", 1:2), LETTERS[1:4], paste0)))
#[1] "var_1A" "var_1B" "var_1C" "var_1D" "var_2A" "var_2B" "var_2C" "var_2D"

或者使用paste0rep另一個選項

paste0(rep(paste0("var_", 1:2), each = 4), LETTERS[1:4])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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