У меня есть список фреймов данных, который выглядит следующим образом:
mylist=[pd.DataFrame({'a':[5,5],'b':[5,5]}),pd.DataFrame({'a':[6,6],'b':[6,6]})]
и отдельный фрейм данных (df), который я хочу добавить в конец двух фреймов данных в mylist.
df=pd.DataFrame({'a':[9],'b':[9]})
Когда я добавляю циклически по mylist, append работает с элементом списка, но не обновляет и не меняет mylist.
for i in mylist:
i=i.append(df, ignore_index=True)
print(i, '\n')
print(mylist, '\n')
a b
0 5 5
1 5 5
2 9 9
[ a b
0 5 5
1 5 5,
a b
0 6 6
1 6 6]
a b
0 6 6
1 6 6
2 9 9
[ a b
0 5 5
1 5 5,
a b
0 6 6
1 6 6]
Я пробовал несколько способов обойти это, используя concat и объединяя 'a', и я получаю тот же общий результат - элементы dataframe изменяются внутри цикла, но после завершения цикла ничего не заканчиваетсяизменился.
Когда я пытаюсь внести те же изменения, но без использования цикла, mylist обновляется .
mylist[0]=mylist[0].append(df, ignore_index=True)
print(mylist[0])
print(mylist)
a b
0 5 5
1 5 5
2 9 9
[ a b
0 5 5
1 5 5
2 9 9,
a b
0 6 6
1 6 6]
Может кто-нибудь объяснить, почему это поведениепроисходит в цикле?Спасибо!