これは基本的な質問ですが、私は尋ねるのが恥ずかしいです。デリミタ付き文字列をデータフレーム内の数値ベクトルに変換してください
のは、私は次のような形式のデータを含む列の完全なデータフレームを持っているとしましょう:
test <-"3000,9843,9291,2161,3458,2347,22925,55836,2890,2824,2848,2805,2808,2775,2760,2706,2727,2688,2727,2658,2654,2588"
私はそうのように行っている数値ベクトル、これを変換したい:
test <- as.numeric(unlist(strsplit(test, split=",")))
このデータでいっぱいの大きなデータフレームを数値ベクトルに変換したいと考えています:
mutate(data,
converted = as.numeric(unlist(strsplit(badColumn, split=","))),
)
これはおそらく、それが数値ベクトルに列全体を変換し、その値を持つ単一の行を置き換えているため動作しません:
Error in mutate_impl(.data, dots) : Column
converted
must be length 20 (the number of rows) or one, not 1274
は、私はこれをどのように行うのですか?
分割後、列が長すぎます。あなたのデータは20行しか持っていないようですが、分割カラムには1274要素があります。データの新しい列(mutateと同じ)に割り当てる必要がなければ、 'as.numeric(unlist(strsplit(data $ badColumn、split ="、 ")))' –
私は理解していますが、なぜそれが当てはまるのか混乱しています。現在の行には「10,20,30,40」のような値が含まれています。これらの値をc(10、20、30、40)の数値ベクトルに置き換えてください。 – Parseltongue
ある行に複数の数値が必要なのですか?例えば。行1は 'c(10,20,30)'を持っていますか? –