2つのデータフレームを元の行順を維持したままマージする
2023-08-25 19:43:19
質問
2つのデータフレームを、片方のデータフレームの元の行の順番を保ったままマージしたいのですが (
df.2
のように)。
以下はサンプルデータです (すべての値は
class
列のすべての値が両方のデータフレームで定義されています)。
df.1 <- data.frame(class = c(1, 2, 3), prob = c(0.5, 0.7, 0.3))
df.2 <- data.frame(object = c('A', 'B', 'D', 'F', 'C'), class = c(2, 1, 2, 3, 1))
もし私が
merge(df.2, df.1)
出力は
class object prob
1 1 B 0.5
2 1 C 0.5
3 2 A 0.7
4 2 D 0.7
5 3 F 0.3
もし私が
sort = FALSE
:
merge(df.2, df.1, sort = F)
結果は
class object prob
1 2 A 0.7
2 2 D 0.7
3 1 B 0.5
4 1 C 0.5
5 3 F 0.3
しかし、私が望むのは
class object prob
1 2 A 0.7
2 1 B 0.5
3 2 D 0.7
4 3 F 0.3
5 1 C 0.5
どのように解決するのですか?
plyrパッケージのjoin関数をチェックしてみてください。これはmergeに似ていますが、データセットの1つの行の順序を維持することができます。全体として、マージよりも柔軟性があります。
あなたの例のデータを使って、私たちは
join
のようにします。
> join(df.2,df.1)
Joining by: class
object class prob
1 A 2 0.7
2 B 1 0.5
3 D 2 0.7
4 F 3 0.3
5 C 1 0.5
行の順序を維持するためのマージ機能の修正について説明したいくつかのリンクを紹介します。
http://www.r-statistics.com/2012/01/merging-two-data-frame-objects-while-preserving-the-rows-order/
関連
-
R: hclust(d, method = method)でのエラー : 外部関数呼び出しは NA/NaN/Inf(arg10) を持つことができません。
-
Rのexpand.grid()コマンド
-
[解決済み] 文字列ベクトルを代入して、列名を持つ空のデータフレームを作成する?重複
-
[解決済み] データフレームを結合(マージ)する方法(内側、外側、左側、右側)
-
[解決済み] Rでtrycatchの書き方
-
[解決済み] データフレームのリストを行単位で1つのデータフレームに結合する
-
[解決済み] ggplotで凡例のタイトルを変更する方法
-
[解決済み】data.table vs dplyr:一方がうまくできない、またはうまくできないことを行うことができますか?
-
[解決済み] FUN内のlapplyインデックス名へのアクセス
-
[解決済み] テーブルをデータフレームに変換する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Rでファイルを読み込む際に、そのようなファイルまたはディレクトリが見つかりません。
-
R plot.new() のエラー : 図形の余白が大きすぎる
-
Rによる系統的クラスタリング(階層)分析のグラフ形式の完全版
-
[解決済み] Rの再現性のある優れた例題の作り方
-
[解決済み] Rの代入演算子"="と"<-"の違いは何ですか?
-
[解決済み] Rで2つのグラフを同じプロットで表示する
-
[解決済み] Rでtrycatchの書き方
-
[解決済み] なぜ `[`] は `subset` よりも優れているのですか?
-
[解決済み】自作関数を書くときにRの省略機能を使うには?
-
[解決済み] ggplot2 で個々のファセットにテキストをアノテートする