Есть ли способ получить журнал операций / изменений, когда pandas выполняет массовую операцию? - PullRequest
0 голосов
/ 07 сентября 2018

Когда я работаю с фреймами данных в ноутбуках Jupyter с пандами, я могу выполнять массовые операции, например:

df_color_pallette.loc[df_color_pallette['foreground']=='red','foreground']='green'

Чтобы изменить каждую запись в столбце «передний план» с «красного» на «зеленый». Однако, если я хочу узнать, какие записи были изменены, или даже просто сколько изменений было внесено, я должен был бы, например, сохранить копию столбца как «до» и сравнить ее с измененным столбцом (и да, Я сделал это). Но это кажется очень неэффективным, заставляя по крайней мере 2 прохода через данные. Это какие-нибудь крючки / журналы / флаги панд, содержащие эту информацию?

1 Ответ

0 голосов
/ 07 сентября 2018

Вы можете следить за маской

mask = df_color_pallette['foreground'] == 'red'

df_color_pallette.loc[mask, 'foreground'] == 'green'

Тогда отметьте

mask.sum()

Или даже изменить снова

df_color_pallette.loc[mask, 'foreground'] == 'beige'
...