[英]Concatenating two string variables in r
我已經看到很多關於使用paste和paste0來連接r中的兩個字符串的討論。 但是,這似乎不適用於兩個字符串變量。 我有一個如下所示的數據框。
series_id year period value footnote_codes
1 LASBS260000000000003 1983 M01 15.1
2 LASBS260000000000003 1983 M02 15.0
3 LASBS260000000000003 1983 M03 14.8
4 LASBS260000000000003 1983 M04 14.6
我希望將year變量與period變量結合起來,在名為observation的數據框中生成一個新變量。 數據框稱為數據,我根據類似查詢的研究嘗試了以下粘貼命令。
data$obs<-paste0(toString(data$year),toString(data$period))
data$obs<-paste(toString(data$year),toString(data$period),sep="")
這並沒有像我們預期的那樣給我預期的值變量“1983M01”。 任何想法將不勝感激。
史蒂夫
我遇到了上面提到的問題:我想將“year”(數字)與字符串變量連接起來。 作為解決方案,我使用“as.character”而不是“toString”,然后使用“paste0”連接變量。 這對我有用。 例如,
df$c<-paste0(as.character(df$a)," ", as.character(df$b))
我知道這是一個老帖子。 希望這能幫助處於類似情況的其他用戶。
以下作品:
> apply(ddf,1 ,function(x) paste0(toString(x[2]), toString(x[3])))
[1] "1983M01" "1983M02" "1983M03" "1983M04"
>
> apply(ddf,1 ,function(x) paste(toString(x[2]), toString(x[3])))
[1] "1983 M01" "1983 M02" "1983 M03" "1983 M04"
toString(ddf $ year)將整個列綁定在一個字符串中:
> toString(ddf$year)
[1] "1983, 1983, 1983, 1983"
>
> toString(ddf$period)
[1] "M01, M02, M03, M04"
>
> paste(toString(ddf$year), toString(ddf$period))
[1] "1983, 1983, 1983, 1983 M01, M02, M03, M04"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.