Pandas: SettingWithCopyWarning [дубликат]
На этот вопрос уже есть ответ:
Как бороться с SettingWithCopyWarning в Pandas? 11 ответов Я хотел бы заменить значения вPandas
DataFrame
больше произвольного числа (в нашем случае 100) сNaN
(поскольку эти большие значения указывают на неудачный эксперимент). Ранее я использовал это, чтобы заменить нежелательные значения:
sve2_all[sve2_all[' Hgtot ng/l'] > 100] = np.nan
Однако я получил следующую ошибку:
-c:3: SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame.
Try using .loc[row_index,col_indexer] = value instead
C:\Users\AppData\Local\Enthought\Canopy32\User\lib\site-packages\pandas\core\indexing.py:346: SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame.
Try using .loc[row_index,col_indexer] = value instead
self.obj[item] = s
От этот вопрос StackExchange, кажется, что иногда это предупреждение можно игнорировать, но я не могу достаточно внимательно следить за обсуждением, чтобы быть уверенным, применимо ли это к моей ситуации. Является ли предупреждение в основном, чтобы я знал, что я буду перезаписывать некоторые значения в моемDataFrame
?
Редакция: Насколько я могу судить, все вело себя как надо. В качестве продолжения мой метод замены значений нестандартен? Есть ли лучший способ заменить значения?