Dataframe-Spalte Klasse besteht aus 2 Werte 0 und 1. Ich möchte zählen, wie viele Zeilen für Klasse 0 und wie viele Zeilen für Klasse 1. Ich habe Code wie folgt geschriebenWie Spaltenwert aus Pandas Dataframe abrufen und Bedingung überprüfen
genuine_count=0
fraud_count=0
if credit_card_df['Class'] == 1:
fraud_count +=1
else:
genuine_count +=1
print "Genuine transactions"+genuine_count
print "Fraud transactions"+fraud_count
ich erhalte diesen Fehler
ValueError Traceback (most recent call last)
<ipython-input-12-2e8ec920b69d> in <module>()
1 genuine_count=0
2 fraud_count=0
----> 3 if credit_card_df['Class'] == 1:
4 fraud_count +=1
5 else:
C:\Users\JAYASHREE\Anaconda2\lib\site-packages\pandas\core\generic.pyc in __nonzero__(self)
890 raise ValueError("The truth value of a {0} is ambiguous. "
891 "Use a.empty, a.bool(), a.item(), a.any() or a.all()."
--> 892 .format(self.__class__.__name__))
893
894 __bool__ = __nonzero__
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
Bitte helfen Sie mir resolve.Thanks
denke ich, kann man einfach die Ausgabe mit 'genuine_count entpacken , betrug_count = credit_card_df ['Klasse']. value_counts() ', und dann drucken. Tolle Idee, tho. – Abdou
Das war eigentlich meine erste Option, aber ich war nicht sicher, dass die von 'value_counts()' zurückgegebene Serie immer sortiert würde. Ich denke, wir könnten das explizit machen, denn das ist immer besser als implizit. :) – jack6e