Pandas записывает обратно в исходный фрейм данных через цепочку назначений - PullRequest
0 голосов
/ 25 августа 2018

Большинство сообщений SO говорили о том, как избежать цепных назначений, например this , this .С другой стороны, меня беспокоит то, как выполнять цепные назначения, в частности, как распространять изменения обратно на исходный фрейм данных при выполнении цепных назначений.

Следующий код даст представление о том, что я хотел быдостигать.До сих пор я пробовал следующее, и цель состоит в том, чтобы распространить изменения label обратно на df_raw.

# different ways to target the same problem
# df presents either in view or copy of origin
a = df_raw[df_raw['ticket_id'] == 111]
b = df_raw[df_raw['ticket_id'] == 111][:]
c = df_raw.loc[df_raw['ticket_id'] == 111]
d = df_raw.query("ticket_id == 111")

a.assign(label = 2)
b.assign(label = 2)
c.assign(label = 2)
d.assign(label = 2)

Результаты:

Но ни один из этих методов не внес изменения, которые распространялись обратно в ячейки в df_raw.

пс из-за характера моей проблемы, я не могу сделать однострочный подход, как this , aМногие непосредственные процессы будут полагаться на среднее назначение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...