Pandsの2つのdataframeのインターリーブと差分セットのコード例


試験データの作成:

import pandas as pd
import numpy as np
 
#Create a DataFrame
df1 = {
  'Subject':['semester1','semester2','semester3','semester4','semester1',
        'semester2','semester3'],
  'Score':[62,47,55,74,31,77,85]}
 
df2 = {
  'Subject':['semester1','semester2','semester3','semester4'],
  'Score':[90,47,85,74]}
 
 
df1 = pd.DataFrame(df1,columns=['Subject','Score'])
df2 = pd.DataFrame(df2,columns=['Subject','Score'])
 
print(df1)
print(df2)
実行結果:
在这里插入图片描述
つのdataframeの交差点を求めます。

intersected_df = pd.merge(df1, df2, how='inner')
print(intersected_df)
在这里插入图片描述
求める列を指定することもできます。

intersected_df = pd.merge(df1, df2, on=['Subject'], how='inner')
print(intersected_df)
在这里插入图片描述
差集を求める
df 2-df 1:

set_diff_df = pd.concat([df2, df1, df1]).drop_duplicates(keep=False)
print(set_diff_df)
在这里插入图片描述
df 1-df 2:

set_diff_df = pd.concat([df1, df2, df2]).drop_duplicates(keep=False)
print(set_diff_df)
在这里插入图片描述
もう一つの差セットを求める方法は、
df 1-df 2を例にとって:

df1 = df1.append(df2)
df1 = df1.append(df2)
set_diff_df = df1.drop_duplicates(subset=['Subject', 'Score'],keep=False)
print(set_diff_df)
得られたdf 1-df 2の結果は同じである。
在这里插入图片描述
ここでは、Pandsの中の2つのdataframeの交差点と差集のコード例についての記事を紹介します。Pands dataframeの交差点の詳細については、以前の記事を検索してください。または下記の関連記事を引き続きご覧ください。これからもよろしくお願いします。