2017-05-09 3 views
2

So etwas wirklich seltsam passiert, wenn ich versuche Bearbeitung bearbeiten:kann nicht Datenrahmen Daten durch ILoc in Pandas

In [119]: print(GDP.iloc[1][0]) 
Out [119]: Andorra 

Wenn ich versuche, zu bearbeiten es mit .iloc und Abfrage es auch in diesem Fall:

In [120]: GDP.iloc[1][0]="Cats" 
      print(GDP.iloc[1][0]) 
Out [120]: Andorra 

Ich erinnere mich zu lesen, dass .iloc kann eine Kopie oder ein Bild abhängig von der numpy Art aufrufen. Irgendwie, um das zu beheben, oder sollte ich anders meine Daten bearbeiten? Vielen Dank.

+2

Try 'GDP.iloc [1,0] = '? 'GDP.iloc [1] [0]' erstellt wahrscheinlich eine Kopie und macht sie somit nicht editierbar. – Divakar

Antwort

2

Es ist am besten Verkettungs Zuweisungen in Pandas zu vermeiden, finden Sie in diesem SO post , die über chaining assignments auf diese Pandas doc verweist

Jedes Mal, wenn Sie haben „] [“ in Pandas sollte es in der Regel schlecht und neu geschrieben werden.

Es ist am besten als Divakar geschrieben schlägt vor:

GDP.iloc[1,0]="Cats" 
Verwandte Themen