2016-04-08 13 views
0

Ich habe mit Pandas in Python begann das folgende Problem zu lösen:Erste Statistiken aus verschiedenen Gruppen von Zeilen

ich eine Excel-Datei, wo ich die Massenwerte aller Vogelarten haben. Im Grunde gibt es zwei Spalten: 'Auftragsname' und 'Massenwert'. Ich möchte Statistiken (mit .describe() schätze ich) der Masse für jede Vogelordnung sammeln und sie irgendwie speichern.

Bisher habe ich versucht, einen Datenrahmen mit den verschiedenen Ordnungen als Spalten zu erstellen, und dann versucht, alle Massenwerte für jeden zu bekommen, aber dann bekomme ich ein Problem mit der Tatsache, dass die Indizes nicht übereinstimmen. Ich bin ziemlich neu mit Python, also bin ich wirklich offen für alle Ideen :)

Vielen Dank!

Tiago

+0

können Sie weitere Details teilen (Fehler & Code) – Sampath

+0

Können Sie Beispieldaten und die gewünschte Ausgabe hinzufügen? Das Beste ist [minimales, vollständiges und überprüfbares Beispiel] (http://stackoverflow.com/help/mcve). – jezrael

Antwort

0
import numpy as np 
import pandas as pd 

df = pd.DataFrame(np.random.randint(10, size=(20, 2)), columns=list('AB')) 
result = df.groupby('A')['B'].describe().unstack() 

Ausbeuten (so etwas wie)

count  mean  std min 25% 50% 75% max 
A              
0 5.0 6.800000 1.923538 4.0 6.00 7.0 8.00 9.0 
1 3.0 5.333333 4.725816 0.0 3.50 7.0 8.00 9.0 
4 3.0 2.666667 1.154701 2.0 2.00 2.0 3.00 4.0 
5 2.0 3.000000 1.414214 2.0 2.50 3.0 3.50 4.0 
6 1.0 4.000000  NaN 4.0 4.00 4.0 4.00 4.0 
7 2.0 5.500000 2.121320 4.0 4.75 5.5 6.25 7.0 
8 3.0 2.333333 2.081666 0.0 1.50 3.0 3.50 4.0 
9 1.0 7.000000  NaN 7.0 7.00 7.0 7.00 7.0 

So einfach 'A'-'Order Name' und B-'Mass Value' ändern.

+0

Wow, vielen Dank! Es tut mir leid, dass ich keine weiteren Informationen zur Verfügung gestellt habe. aber genau das wollte ich trotzdem! – TiagoL

Verwandte Themen