我有以下(字符)矢量,我想將其與年份內容合并到更大的矢量中
text_2020_0001
text_2020_0002
...
text_2020_0320
text_2021_0001
文本_2021_0002
...
text_2021_0237
我想得到的是
text_2020 < - c(text_2020_0001,/span>text_2020_0002,/span>. ...,text_2020_0320)。
text_2021 <- c(text_2021_0001,/span>text_2021_0002,/span>。 ...,text_2021_0237)。
我已經編好了這個雙回圈,但并不奏效,因為c(paste0(), ...)并不是辦法,但我搞不清楚應該用什么辦法。
for (i c(20。 21)) {
assign(paste0("text_20", i),
paste0("text_20",/span>i。 "_0001"))
for(j in (1。 400) {
assign(paste0("text_20"。 i),
c(paste0("text_20"。 i)。 paste0("text_20"。 i,"_"。 formatC(j 1, 寬度= 3。 格式= "d"。 旗幟= "0"))))
}
}
預先感謝您的幫助!
uj5u.com熱心網友回復:
用sprintf
txt1 < - sprintf('text_%d_d'/span>。 rep(c(2020。 2021)。 c(320。 237))。 c(1。 320, 1。 237))
輸出
> head(txt1)
[1] "text_2020_0001" "text_2020_0002" "text_2020_0003" "text_2020_0004" "text_2020_0005" "text_2020_0006"
> tail(txt1)
[1] "text_2021_0232" "text_2021_0233" "text_2021_0234" "text_2021_0235" "text_2021_0236" "text_2021_0237"
如果需要分離
txt2020 < - sprintf('text_2020_d', 1: 320)
txt2021 < - sprintf('text_2021_d', 1。 237)
如果這些是在全域環境中創建的物件(不推薦),我們可以用mget
txt2020_out < -unlist(mget(txt2020),使用。 names = FALSE)
txt2021_out <- unlist(mget(txt2021), use. names = FALSE)。
另外,這些物件可以用ls mget中的regex pattern自動加載到一個list
txt2020_out < -unlist(mget(ls(pattern = 'text_2020_d{4}'))。 使用。 names = FALSE)
txt2021_out < -unlist(mget(ls(pattern = 'text_2021_d{4}'))。 使用。 names = FALSE)
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/322189.html
標籤:
