の分割数を割り当てる:動的あなたがそうのような列に変数を分割することができdata.table tstrsplitに<code>data.table v.1.9.6</code>で
library(data.table)
DT = data.table(x=c("A/B", "A", "B"), y=1:3)
DT[, c("c1", "c2") := tstrsplit(x, "/", fixed=TRUE)][]
必要分割数を[上:2]は常に事前に知られていません。 分割数が分かっている場合、どのように必要な変数名を生成できますか?
n = 2 # desired number of splits
# naive attempt to build required string
m = paste0("'", "myvar", 1:n, "'", collapse = ",")
m = paste0("c(", m, ")")
# [1] "c('myvar1','myvar2','myvar3')"
DT[, m := tstrsplit(x, "/", fixed=TRUE)][] # doesn't work
を、それがリサイクルされます可能性があります。彼らは質問にタイプミスがあるかもしれません: ''スプリットの数が分かっているときに、どのように必要な変数名を生成できますか? 'たぶん彼らは「未知」と書くことを意図していました。 –
は既知の意味です。 n = 2に設定することで[うまくいけば]クリアされる質問を編集しました。 – Henk
それでは、上記の答えがあります。 –