Ich habe eine Zeile in einem Pandas-Datenrahmen, der die Verkaufsrate meiner Artikel enthält.Pandas: Ändern einer bestimmten Zeile in Prozentsätze
Ein Blick auf meine Daten:
block_combine
Out[78]:
END_MONTH 1 2 3 4 5
Total Listings 168 219 185 89 112
Total Sales 85 85 84 41 46
ich das, indem Sie nach dem Verkaufs% leicht berechnen:
block_combine.loc["Total Sales Rate"] = block_combine.ix[1,:]/block_combine.ix[0,:]
block_combine
Out[79]:
END_MONTH 1 2 3 4 5
Total Listings 168.000000 219.000000 185.000000 89.000000 112.000000
Total Sales 85.000000 85.000000 84.000000 41.000000 46.000000
Total Sales Rate 0.505952 0.388128 0.454054 0.460674 0.410714
Nun, was ich zu tun versucht, ist die „Total Sales zu ändern Rate "Zeile zu ganze Zahl Prozentsätze. Ich bin in der Lage, dies zu tun, wenn es eine Spalte war, aber ich stoße auf Probleme, wenn ich mit Reihen arbeite.
Hier ist, was ich versucht:
block_combine.loc["Total Sales Rate"] = pd.Series(["{0:.0f}%".format(val * 100) for val in block_combine.loc["Total Sales Rate"]])
block_combine
Out[81]: In [82]:
END_MONTH 1 2 3 4 5
Total Listings 168 219 185 89 112.0
Total Sales 85 85 84 41 46.0
Total Sales Rate 39% 45% 46% 41% NaN
Die Berechnungen sind aus/nach links verschoben. Die Verkaufsrate für Monat 1 ist die Verkaufsrate für Monat 2 (39%)!