У меня есть 2 кадра данных TRAIN
и TEST
.Я хотел бы изменить TRAIN
, добавив информацию, что он не содержит ни одного из элементов (Y2, Y3), которые находятся в TEST
, но не в TRAIN
.
TRAIN = pd.DataFrame({'X' : [1,1,1,1,1,2,2,2,2,2],
'Y1': [1,1,1,1,1,1,0,0,0,0],
'Y4': [1,1,0,0,0,0,0,0,0,0]})
TEST = pd.DataFrame({'X' : [1,1,1,1,1,2,2,2,2],
'Y1': [1,1,0,1,0,1,0,0,0],
'Y2': [1,0,1,0,1,0,1,0,1],
'Y3': [1,1,0,1,1,0,0,0,0],
'Y4': [1,1,0,1,1,0,0,0,0]})
Я хотел бы:
TRAIN = pd.DataFrame({'X' : [1,1,1,1,1,2,2,2,2,2],
'Y1': [1,1,1,1,1,1,0,0,0,0],
'Y4': [1,1,1,1,1,1,0,0,0,0],
'Y2': [0,0,0,0,0,0,0,0,0,0],
'Y3': [0,0,0,0,0,0,0,0,0,0]})
Я пытался:
L_TRAIN = list(TRAIN)
L_TEST = list(TEST)
def Diff(li1, li2):
li_dif = [i for i in li1 + li2 if i not in li1]
return li_dif
L_DIFF = Diff(L_TRAIN, L_TEST)
TRAIN[L_DIFF] = 0
Но получил:
KeyError: "['Y2' 'Y3'] not in index"