複数の一致するデータフレームをマージする場合は、最初の行のみを選択します

「data」と「scores」の2つのデータフレームがあり、「id」列でそれらをマージしたいと思います。

data = data.frame(id = c(1,2,3,4,5),
                  state = c("KS","MN","AL","FL","CA"))
scores = data.frame(id = c(1,1,1,2,2,3,3,3),
                    score = c(66,75,78,86,85,76,75,90))
merge(data, scores, by = "id")                  
semi_join(data, scores, by = "id")                  

「スコア」データには、複数の観測値を持つ「id」があり、各一致は結合に続いて行を取得します。参照?merge

複数の一致がある場合、すべての可能な一致がそれぞれ1行になります。

ただし、テーブルの最初の一致に対応する行のみを保持する必要がありscoresます。

セミジョインがあれば良かったのですが、正しいテーブルからスコアを選択することができません。

助言がありますか?

アルン

使用するdata.tableとともに、mult = "first"nomatch = 0L

require(data.table)
setDT(scores); setDT(data) # convert to data.tables by reference

scores[data, mult = "first", on = "id", nomatch=0L]
#    id score state
# 1:  1    66    KS
# 2:  2    86    MN
# 3:  3    76    AL

上の行ごとdataid列に一致する行scoresid列が発見され、単独で最初のものは(ために保持されますmult = "first")。一致するものがない場合、それらは削除されます(のためnomatch = 0L)。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

複数の一致がある場合は、データフレームを結合し、ランダムな行を選択します

分類Dev

複数の値に一致する場合は、Pandasデータフレームの行を削除します

分類Dev

Pythonで2つのデータフレームを左結合する方法、フィルター後の2番目のデータフレームに一致する行が複数ある場合は、最初の行と結合します

分類Dev

複数のタイプが一致する場合はクエリレコードを選択します

分類Dev

列名が一致する場合は、データフレームの列値を行に変更します

分類Dev

列の値が部分的に一致するデータフレームの行を選択します

分類Dev

2つのデータフレームをマージし、一致する列のみを保持します

分類Dev

行、列の値が別の列の任意の場所と一致する場合は、パンダデータフレームの行を削除します

分類Dev

Python / Pandas:複数の条件を持つデータフレーム行の選択-列1は列2または列3と一致します

分類Dev

パンダは、一致する複数の列値に基づいて2つのデータフレームをマージします

分類Dev

Splunkは一致するJSONデータのみを選択します

分類Dev

複数の選択基準に一致する2つの異なるデータフレームの行に基づいて3番目のデータフレームを構築します

分類Dev

複数のデータフレームを一致する列と組み合わせる

分類Dev

複数の列のデータが一致する場合、DataTableの行をマージするにはどうすればよいですか?

分類Dev

別のデータフレームのIDと一致する場合は、n個のデータフレームから値を追加します

分類Dev

3列の一致する値に基づく複数のデータフレームを単一のデータフレームにマージする

分類Dev

3つの異なる列を調べて、共通の数値を別のデータフレームの1つの列と一致させて、データをマージするにはどうすればよいですか(一致がない場合は追加します)。

分類Dev

一致する文字列が特定の値を超える場合は、パンダのデータフレームから行を削除します

分類Dev

最初の4列が一致する場合にデータフレームを削減する

分類Dev

2つのデータフレームの列名が一致する場合に値を検索します

分類Dev

特定の列の値が両方のデータフレームで一致する場合は、あるデータフレームの行を別のデータフレームにコピーします

分類Dev

Pandasの一致する列を持つ2つのデータフレームをマージします

分類Dev

一致する場合にのみ、2つのデータフレームをマージし、新しい列の別の列からデータを返すにはどうすればよいですか?

分類Dev

Rでは、サイトと日付が2つのデータフレームで一致する場合、最初のデータフレームから行の値をプルします

分類Dev

最初の2つの列が一致する場合は、複数の列を別のファイルのデータに置き換えます

分類Dev

pandas-データフレームのrow [i]がrow [j]にある場合は、行を選択します

分類Dev

Rは、複数の列が重なる場合にのみデータフレームをマージします

分類Dev

データフレームの列を行の値で比較し、パターンが一致する列を選択します

分類Dev

別の行の値と一致する場合は、データフレームの値を変更します

Related 関連記事

  1. 1

    複数の一致がある場合は、データフレームを結合し、ランダムな行を選択します

  2. 2

    複数の値に一致する場合は、Pandasデータフレームの行を削除します

  3. 3

    Pythonで2つのデータフレームを左結合する方法、フィルター後の2番目のデータフレームに一致する行が複数ある場合は、最初の行と結合します

  4. 4

    複数のタイプが一致する場合はクエリレコードを選択します

  5. 5

    列名が一致する場合は、データフレームの列値を行に変更します

  6. 6

    列の値が部分的に一致するデータフレームの行を選択します

  7. 7

    2つのデータフレームをマージし、一致する列のみを保持します

  8. 8

    行、列の値が別の列の任意の場所と一致する場合は、パンダデータフレームの行を削除します

  9. 9

    Python / Pandas:複数の条件を持つデータフレーム行の選択-列1は列2または列3と一致します

  10. 10

    パンダは、一致する複数の列値に基づいて2つのデータフレームをマージします

  11. 11

    Splunkは一致するJSONデータのみを選択します

  12. 12

    複数の選択基準に一致する2つの異なるデータフレームの行に基づいて3番目のデータフレームを構築します

  13. 13

    複数のデータフレームを一致する列と組み合わせる

  14. 14

    複数の列のデータが一致する場合、DataTableの行をマージするにはどうすればよいですか?

  15. 15

    別のデータフレームのIDと一致する場合は、n個のデータフレームから値を追加します

  16. 16

    3列の一致する値に基づく複数のデータフレームを単一のデータフレームにマージする

  17. 17

    3つの異なる列を調べて、共通の数値を別のデータフレームの1つの列と一致させて、データをマージするにはどうすればよいですか(一致がない場合は追加します)。

  18. 18

    一致する文字列が特定の値を超える場合は、パンダのデータフレームから行を削除します

  19. 19

    最初の4列が一致する場合にデータフレームを削減する

  20. 20

    2つのデータフレームの列名が一致する場合に値を検索します

  21. 21

    特定の列の値が両方のデータフレームで一致する場合は、あるデータフレームの行を別のデータフレームにコピーします

  22. 22

    Pandasの一致する列を持つ2つのデータフレームをマージします

  23. 23

    一致する場合にのみ、2つのデータフレームをマージし、新しい列の別の列からデータを返すにはどうすればよいですか?

  24. 24

    Rでは、サイトと日付が2つのデータフレームで一致する場合、最初のデータフレームから行の値をプルします

  25. 25

    最初の2つの列が一致する場合は、複数の列を別のファイルのデータに置き換えます

  26. 26

    pandas-データフレームのrow [i]がrow [j]にある場合は、行を選択します

  27. 27

    Rは、複数の列が重なる場合にのみデータフレームをマージします

  28. 28

    データフレームの列を行の値で比較し、パターンが一致する列を選択します

  29. 29

    別の行の値と一致する場合は、データフレームの値を変更します

ホットタグ

アーカイブ