Rと30分前に作業を始め、SQL ServerのRスクリプトを実行していると言わなければならないので、 。長さの異なる2つのベクトルをデータフレームにマージ
私は2つのRベクトルをデータフレームにマージしようとしていますが、私の問題はベクトルの長さが変わることです。
私は必ずしもそうではありませんが、これを行うことができますか分かりませんか?
マイRスクリプトは次のとおりです。
n <- c(2, 3, 5, 6);
s = c("aa", "bb", "cc");
df = data.frame(n, s);
そして、私は取得していますエラーは次のとおりです。
data.frameでエラーが発生しました(N、S):引数は 行の異なる数を意味するものではあり:4,3コール:ソース - > withVisible - > eval - > eval - > data.frame
ScaleRのエラー。詳細については、出力を確認してください。 のエラーeval(expr、envir、enclos):ScaleRのエラーです。詳細については の出力を確認してください。コール:ソース - > withVisible - >評価 - >評価 - > は.call実行私はやって想像してること
LEFT JOIN
に似た結果セットを生成しているEsentially
を停止しました。
2 aa
3 bb
5 cc
6 NULL
私はRのデータフレームに「NULLを置き換える」値を指定する必要がある場合、私は自分自身を求めているが、私はこれが解決策であるかはわかりません。多分
はあなたがそこにNULL' '持っているのではなく、' NA'(不足しているため)することはできません:(N = N、S = Sで) 'L =リスト。 data.frame(lapply(L、\ 'length < - \'、max(lengths(L)))) 'となります。私はこれのためのいくつかの二等式があると思う。 – Frank
あなたが参照しているものは「マージ」していません。 'merge'にはキーが必要です。 Rのdata.frameに異なる長さの 'list'を組み合わせることはできません。それらを結合するには同じ長さにする必要があります。どのようにそれらを結合したいですか? – DJJ
@DJJ Rデータフレームに暗黙的なキーが生成されているため、それぞれの行にJOINまたはマップできるようになっていますが、まだ何も見つかりませんでした。 –