2016-04-07 7 views
1

Ich habe einen Pandas-Datenrahmen (genannt smalls), der mehrfach umgewidmet wird, um mehrere Netzwerkdiagramme aus einem Datensatz zu erstellen. Ich versuche, die Farbe der Knoten in einem der Diagramme basierend auf Entitätstyp festzulegen und den ursprünglichen Datenframe abzufragen. Wenn ich dies aber mache, ergibt sich eine Serie, an der ich dann keinen Vergleich anstellen kann. Wie kann ich die erste Zeile unten ändern, um nur den ersten Eintrag vom Datenrahmen zu erhalten (alle anderen sind gleich)?pandas query single output

temp=smalls.Role[smalls.Entity==big_nodes_order[i]] 

print(temp) 
10 Threat 
11 Threat 
12 Threat 
Name: Role, dtype: object 

Antwort

1

Ich glaube, Sie iloc oder iat verwenden können:

temp=smalls.Role[smalls.Entity==big_nodes_order[i]] 
print temp 
10 Threat 
11 Threat 
12 Threat 
Name: Role, dtype: object 

print temp.iloc[0] 
Threat 

print temp.iat[0] 
Threat 

print temp.iloc[:1] 
10 Threat 
Name: Role, dtype: object 
+0

Dank @jezrael, weiß ich nicht, warum es nicht tat mir einfallen, die Antwort wie eine Serie zu behandeln und einfach damit umzugehen. Ich war sehr darauf konzentriert, den Wert von Temp nur als eine Sache zu betrachten, die ich offensichtlich übersehen habe. Vielen Dank. – tillmas

0

alternativ können Sie .head() Methode verwenden:

temp=smalls.Role[smalls.Entity==big_nodes_order[i]].head(1)