Ich habe ein Wörterbuch von Datenrahmen erstellt, um meine Daten zu speichern. Ich muss für jeden Datenrahmen, für den ich versuche, iteritems() zu verwenden, um das Wörterbuch zu durchlaufen, etwas tun. Aber irgendwie scheint ich nicht in der Lage zu sein, irgendetwas mit den Datenrahmen zu tun. Code kompiliert und wirft keine Fehler, es scheint nur nichts zu tun.Pandas Datenrahmen in einem Wörterbuch bei der Verwendung von iteritems()
hier eine Vereinfachung meiner Code:
Dies macht nur eine Probe Wörterbuch von Datenrahmen
dic={}
df1=pd.DataFrame(np.random.randn(10,5),columns=['a','b','c','d','e'])
df2=pd.DataFrame(np.random.randn(10,5),columns=['a','b','c','d','e'])
df3=pd.DataFrame(np.random.randn(10,5),columns=['a','b','c','d','e'])
df4=pd.DataFrame(np.random.randn(10,5),columns=['a','b','c','d','e'])
df5=pd.DataFrame(np.random.randn(10,5),columns=['a','b','c','d','e'])
dic[1]=df1
dic[2]=df2
dic[3]=df3
dic[4]=df4
dic[5]=df5
Und dies ist eine Reihe grundlegender Dinge, die ich zu jedem Datenrahmen tun wollen.
for key, item in dic.iteritems():
item=item.reset_index()
item['Rank']=(item.index)+1
So, nach der Iteration ich jeden Datenrahmen erwarten eine zusätzliche Spalte mit dem alten Index zu haben, und ein weitere zusätzliche Spalte mit der „Rank“ wie folgt:
Statt dem Datenrahmen scheint durch die Operationen nicht betroffen zu sein und sieht genauso aus wie zuvor:
I habe versucht, auch einen temporären Datenrahmen innerhalb der Iteration zu verwenden und dann zu versuchen, ihn mit dem gleichen Ergebnis in "item" zu schreiben. Ich frage mich nur, ob das, was ich tun möchte, überhaupt möglich ist oder vielleicht muss ich es umgehen und eine andere Methode verwenden, um meine Ziele zu erreichen.
Mann, der war genial. Es wirkt wie ein Zauber! Ich wusste, dass ich gerade etwas vermisste. –
Nun, da ich dich hier habe, was ist der Unterschied zwischen iteritems() und items() ... ist iteritems() veraltet? –
Schwierige Frage für mich, aber [hier] (https://Stackoverflow.com/a/3294899/2901002) es besser erklären. – jezrael