python - Pandas DataFrame Row Matching -
i have 2 info frames , trying find solution 2 of below problems.
i want match "serial_number" df_old df_new , want see if exist in df_old or not. illustration if df_old has serial_number 1,2,3 , df_new has serial number 1,3,4 result should 1 , 3.
good way show data.
import pandas pd df_old = pd.dataframe({'s_no' : [1,2,3,4,5], 'serial_number' : [1234,2345,3456,1456,9867], 'beg_balance' : [10,20,45,21,29], 'end_balance' : [2,6,8,5,3]}) df_new = pd.dataframe({'s_no' : [1,2,3,4], 'serial_number' : [8754,5657,1234,9867], 'beg_balance' : [32,20,10,29], 'end_balance' : [5,6,2,1]}) df_old_1 = df_old.sort('serial_number',ascending=true) df_new_1 = df_new.sort('serial_number',ascending=true) print df_old_1 print df_new_1 = df_old_1['serial_number'] != df_new_1['serial_number'] bn = df_new_1['serial_number'] != df_old_1['serial_number']
it you're looking kind of merge:
in [11]: pd.merge(df_old_1, df_new_1, on='serial_number') out[11]: beg_balance_x end_balance_x s_no_x serial_number beg_balance_y end_balance_y s_no_y 0 10 2 1 1234 10 2 3 1 29 3 5 9867 29 1 4 see more in the docs.
python pandas
No comments:
Post a Comment