"bir değer, bir DataFrame bir dilim bir kopyası ayarlanabilir çalışıyor" [row_indexer, col_indexer] = değer .loc kullanmayı deneyin bir uyarıdır. SO bu konuda birçok mesaj içeriyor. Pandalar 0.16'da eklenmiştir ve bu uyarının önlenmesi için iyi bir yoldur.
quarter = {"Q1": "Mar", "Q2": "Jun", "Q3": "Sep", "Q4": "Dec"}
df = pd.DataFrame({'period': ['Q1', 'Q2', 'Q3', 'Q4', 'Q5'], 'qtr': [1, 2, 3, 4, 5]})
df
period qtr
0 Q1 1
1 Q2 2
2 Q3 3
3 Q4 4
4 Q5 5
df = df.assign(period=[quarter.get(q, q) for q in df.period])
# Unmapped values unchanged.
>>> df
period qtr
0 Mar 1
1 Jun 2
2 Sep 3
3 Dec 4
4 Q5 5
df = pd.DataFrame({'period': ['Q1', 'Q2', 'Q3', 'Q4', 'Q5'], 'qtr': [1, 2, 3, 4, 5]})
df = df.assign(period=df.period.map(quarter))
# Unmapped values get `NaN`.
>>> df
period qtr
0 Mar 1
1 Jun 2
2 Sep 3
3 Dec 4
4 NaN 5
yenileri ilave olarak tüm orijinal sütunlu yeni bir nesne (kopya) dönen bir DataFrame yeni sütunlar atayın.
.. versionadded :: 0.16.0
ben uyarı bazen yanlış gösterilmiştir önceki sürümlerinde düşünüyorum
. Uyarı 0.18.0 pandasında alamıyorum. Ama atama hakkında bilgi edinmek güzel. – ayhan