Wie würde ich Zeilen extrahieren, bei denen eine Spalte mit einem bestimmten Wert aus einem Dataframe übereinstimmt, der aus einer Excel-Datei erstellt wurde?Zeilen aus Pandas extrahieren Dataframe basierend auf Spaltenwert
Hier sind einige Zeilen aus dem Datenrahmen:
Food Men Women
0 Total fruit 86.20 88.26
1 Apples, Total 89.01 89.66
2 Apples as fruit 89.18 90.42
3 Apple juice 88.78 88.42
4 Bananas 95.42 94.18
5 Berries 84.21 81.73
6 Grapes 88.79 88.13
und dies ist der Code, den ich verwenden, um die Excel-Datei zu lesen, die Spalten der Wahl ich brauchte und das Umbenennen von ihnen in geeigneter Weise:
data1= pd.read_excel('USFoodCommodity.xls', sheetname='94-98 FAH', skiprows=76,skip_footer=142, parse_cols='A, H, K')
data1.columns = ['Food', 'Men', 'Women']
# Try 1: data1 = data1[data1['Food'].isin(['Total fruit']) == True] works
# Try 2: data1 = data1[data1['Food'].isin(['Apple, Total']) == True] doesn't work
# Try 3: data1 = data1.iloc[[1]] returns Apples, Total but not appropriate to use integer index
# Try 4: data1[data1['Food'] == 'Berries'] doesn't work
Bisher konnte ich anhand der Antworten wie this, this oder here nur den ersten Index mit Food = "Total fruit" zurückgeben. Wenn ich versuche, die anderen Methoden oben ich nur die Spaltennamen erhalten, wie:
Food Men Women
Ich bin neu in Pandas und kann nicht sehen, wo ich falsch werde. Warum kann ich die erste Zeile, wo Essen == Total Obst, aber nichts anderes?
keine Zeile Ergebnisse für Beeren oder Trauben – dreamin