Это очень простой вопрос, я просто не могу найти ответ.
У меня есть подобный dataframe, называемый df:
A B C
a.1 b.1 c.1
a.2 b.2 c.2
a.3 b.3 c.3
Затем я извлекаю все строки из df, где столбец "B" имеет значение "b.2". Я присваиваю эти результаты df_2.
df_2 = df[df['B'] == 'b.2']
df_2 становится:
A B C
a.2 b.2 c.2
Затем я копирую все значения в столбце "B" в новый столбец с именем "D". Вызов df_2:
A B C D
a.2 b.2 c.2 b.2
Когда я выполняю задание следующим образом:
df_2['D'] = df_2['B']
Я получаю следующее предупреждение:
Значение пытается установить на копии среза из DataFrame. Пытаться используя .loc [row_indexer, col_indexer] = значение вместо
См. оговорки в документации: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy
Я также пытался использовать .loc при создании df_2 следующим образом:
df_2 = df.loc[df['B'] == 'b.2']
Однако я все еще получаю предупреждение.
Любая помощь очень ценится.