Dieses Mal werde ich die Ereignisse zusammenfassen, die ich bei der Verwendung von Pandas nicht sofort verstanden habe. Wie betreibe ich Pandas? Ich verliere mich oft und hoffe, dass es so hilfreich wie möglich ist.
python
index = ['Produkt A.', 'Produkt B.', 'Produkt C.']
columns = ['Frühling', 'Sommer-', 'Herbst', 'Winter']
data = np.array([
[0,10,20,30],
[0,0,100,20],
[50,100,20,40],
])
df = pd.DataFrame(data, index=index, columns=columns)
df.head()
Frühling | Sommer- | Herbst | Winter | |
---|---|---|---|---|
Produkt A. | 0 | 10 | 20 | 30 |
Produkt B. | 0 | 0 | 100 | 20 |
Produkt C. | 50 | 100 | 20 | 40 |
python
for index, row in df.iterrows():
# df.ix[index, 'Verkaufssaison'] = row.argmax()
df.ix[index, 'Verkaufssaison'] = row.idxmax() #Sie können beides tun
# df.ix[index, 'Saison, wenn nicht verkauft'] = row.argmin()
df.ix[index, 'Saison, wenn nicht verkauft'] = row.idxmin() #Sie können beides tun
df.ix[index, 'MAX'] = row.max()
df.ix[index, 'MIN'] = row.min()
df.head()
Frühling | Sommer- | Herbst | Winter | Verkaufssaison | Saison, wenn nicht verkauft | MAX | MIN | |
---|---|---|---|---|---|---|---|---|
Produkt A. | 0 | 10 | 20 | 30 | Winter | Frühling | 30 | 0 |
Produkt B. | 0 | 0 | 100 | 20 | Herbst | Frühling | 100 | 0 |
Produkt C. | 50 | 100 | 20 | 40 | Sommer- | Herbst | 100 | 20 |
―― Mit anderen Worten, ich möchte die Saison veröffentlichen, in der jedes Produkt zum ersten Mal verkauft wird. A ist Sommer, B ist Herbst
python
for index, row in df.iterrows():
#index[0]Nehmen Sie den ersten heraus, der die Bedingungen erfüllt
df.ix[index, 'Saison, um mit dem Verkauf zu beginnen'] = row[row > 0].index[0]
df.head()
Frühling | Sommer- | Herbst | Winter | Saison, um mit dem Verkauf zu beginnen | |
---|---|---|---|---|---|
Produkt A. | 0 | 10 | 20 | 30 | Sommer- |
Produkt B. | 0 | 0 | 100 | 20 | Herbst |
Produkt C. | 50 | 100 | 20 | 40 | Frühling |
―― Mit anderen Worten, ich möchte die Produktlinie C extrahieren, die das ganze Jahr über verkauft wird.
python
#not_zero_df = df.query('Frühling>0 und Sommer>0 und Herbst>0 und Winter> 0')
#not_zero_df = df.query('Frühling!=0 und Sommer!=0 und Herbst!=0 und Winter!= 0')
#↑ Es ist okay, aber es kann als Variable draußen sein. Unten "@Einfach hinzufügen
hoge1,hoge2,hoge3,hoge4 = 0,0,0,0
not_zero_df = df.query('Frühling> @hoge1 und Sommer> @hoge2 und herbst> @hoge3 und winter> @hoge4')
not_zero_df.head()
Frühling | Sommer- | Herbst | Winter | |
---|---|---|---|---|
Produkt C. | 50 | 100 | 20 | 40 |
―― Übrigens, wenn Sie Nicht-Null extrahieren möchten, indem Sie sich nur auf den Sommer konzentrieren, können Sie auch so schreiben (Zeilen extrahieren, bei denen der Sommer nicht 0 ist)
python
hoge = 0
not_zero_df = df.query('Sommer-!= @hoge')
not_zero_df.head()
Frühling | Sommer- | Herbst | Winter | |
---|---|---|---|---|
Produkt A. | 0 | 10 | 20 | 30 |
Produkt C. | 50 | 100 | 20 | 30 |
** Wir werden es nach Bedarf weiter hinzufügen **
Recommended Posts