我有一個數據框 df, plan_year name metal_level_name0 20118 Gold Heritage Plus 1500 - 02 Gold1 2018 NaN Platinum2 2018 Gold Heritage Plus 2000 - 01 Gold我已經把數據驗證上plan_year和name列下面喜歡,m4 = ((df['plan_year'].notnull()) & (df['plan_year'].astype(str).str.isdigit()) & (df['plan_year'].astype(str).str.len() == 4))m1 = (df1[['name']].notnull().all(axis=1))我得到了下面的有效數據框,df1 = df[m1 & m4]我可以獲得 df1 中不存在的行(無效的行)merged = df.merge(df1.drop_duplicates(), how='outer', indicator=True)merged[merged['_merge'] == 'left_only']我想跟蹤哪一行由于哪項驗證而失敗。我想獲得一個包含所有無效數據數據框的數據框,如下所示 - plan_year name metal_level_name Failed message0 20118 Gold Heritage Plus 1500 - 02 Gold Failed due to wrong plan_year1 2018 NaN Platinum name column cannot be null有人可以幫我解決這個問題嗎?
添加回答
舉報
0/150
提交
取消