Я проверяю данные ч / б в 2 разных источниках данных, используя pandas и pandasql.После проверки я сохраняю несоответствия в новом фрейме данных.Проблема заключается в том, что для ключа столбца в каждой строке я не соответствовал столбцу как ненулевым значениям, тогда как другие столбцы были нулевыми.
введите описание изображения здесь Я пытался использовать df.stack (), но не смог многого достичь.
Для данного ключа я хочу, чтобы все несоответствующие столбцы в 1 строкевместо нескольких строк, содержащих несовпадающие столбцы в каждой строке.
Фактическое представление кадра данных находится в изображении.Ниже приведен пример: (Bi, Bj) -> пары (ожидаемых, фактических) значений столбца.
sample = pd.DataFrame(data = {'A':[10,10,10] , 'B1':['CMBS-Cash','Nan','Nan'],'B2':['CMBS','Nan','Nan'] ,'B3':['Nan','CMBSCASH','Nan'],'B4':['Nan','Eternit','Nan'] ,
'B5':['Nan','Nan','CMBS'],'B6':['Nan','Nan','Cash']})
final = pd.DataFrame(data = {'A':[10] , 'B1':['CMBS-Cash'],'B2':['CMBS'] ,'B3':['CMBSCASH'],'B4':['Eternit'] ,'B5':['CMBS'],'B6':['Cash'] })