Sie können Ihre Daten direkt in einem Nummernfeld lesen mit:
%Vor%dann können Sie geeignete Indizes mit np.where finden:
%Vor%und führen Sie den Mittelwert auf diesen Indizes:
%Vor% Die Funktion mean
dient zum Berechnen des Durchschnitts eines Arrays von Zahlen. Sie müssen einen Weg finden, um die Werte von c3
auszuwählen, indem Sie eine Bedingung auf c2
anwenden.
Was wahrscheinlich besser zu Ihren Bedürfnissen passt, wäre die Aufteilung der Daten in eine hierarchische Struktur. Ich bevorzuge die Verwendung von Wörterbüchern. Etwas wie
%Vor% Jetzt wird data
wie
Was Sie dann tun können, ist
%Vor% Hier verwende ich immer noch np.mean
, aber ich rufe es nur in einer normalen Python-Liste auf.
Ich werde dieses Community-Wiki erstellen, weil es eher "Hier ist, wie ich denke, dass du es stattdessen tun solltest" als "Hier ist die Antwort auf die Frage, die du gestellt hast". Für so etwas würde ich wahrscheinlich pandas
anstelle von numpy
verwenden, da die Gruppierungswerkzeuge viel besser sind. Es wird auch nützlich sein, mit numpy
-basierten Ansätzen zu vergleichen.
.. und, äh, das ist es.
Lies zuerst die Daten in DataFrame
ein und lasse entweder whitespace oder _
separate Spalten:
Dann gruppieren Sie nach name
und property
, nehmen Sie die Spalte value
und berechnen Sie den Mittelwert:
.. okay, der sep="[ _]"
Trick ist ein wenig zu süß für echten Code, obwohl er hier gut genug funktioniert. In der Praxis verwende ich ein Whitespace-Trennzeichen, lese in der zweiten Spalte property_year
und mache dann
um Unterstriche in anderen Spalten zuzulassen.
Tags und Links python python-3.x python-2.7 numpy