[英]Compare two data frames by each column in python?
DF1:
Roll_No Sub1 Sub2 Sub3
1001 40 50 60
1002 65 87 30
1003 36 49 40
1004 29 83 50
我想比較子級別上每個 Roll_No 的 Roll_No 1001。 不知何故,我創建了 df2,它看起來像: df2
Roll_No Sub1 Sub2 Sub3
1001 40 50 60
1001 40 50 60
1001 40 50 60
1001 40 50 60
現在我想在多個條件下將每一列與 df1 & df2 進行比較。
Cond1 - df1.Sub1 -df2.Sub1 > 5
then 1 else 0
Cond2 - df1.Sub2 -df2.Sub2 > 10
then 2 else 0
Cond3 - df1.Sub3 -df2.Sub3 > 7
then 3 else 0
Output:
Roll_No Sub1 Sub2 Sub3
1001 0 0 0
1002 0 2 3
1003 0 0 3
1004 1 0 3
import pandas as pd
import numpy as np
Output = df1.copy()
Output['Sub1'] = np.where(df1['Sub1'] - df2['Sub1'] > 5, 1, 0)
Output['Sub2'] = np.where(df1['Sub2'] - df2['Sub2'] > 10, 2, 0)
Output['Sub3'] = np.where(df1['Sub3'] - df2['Sub3'] > 7, 3, 0)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.