0
votes

Comment sélectionner des lignes appropriées de différentes colonnes pertinentes? (Pandas Dataframe)

Tout le monde.Je suis le débutant pour les pandas. Mon objectif: sélectionnez l'équipe la plus précieuse de la "Team_List". L'équipe la plus précieuse signifie: la plupart des buts, des cartes les moins jaunes et rouges. La "Team_List" consiste en "équipe", "buts", "cartes jaunes", "cartes rouges" - quatre colonnes. Team_List montre

   euro['RedCard_rate']=euro['Red Cards']/euro['Goals'];
   euro['YellowCard_rate']=euro['Yellow Cards']/euro['Goals'];
   sort_teams=euro.sort_values(by=['YellowCard_rate','RedCard_rate']);
   print (sort_teams[['Team','Goals','Yellow Cards','Red Cards']].head(1));

  the results:
          Team  Goals  Yellow Cards  Red Cards
   5   Germany     10             4          0


2 commentaires

S'il vous plaît faire une bonne foi tenter de résoudre le problème vous-même vous-même. Si nous ne pouvons pas voir suffisamment de travail de votre part, votre question sera probablement bioé de la scène; Il sera voté et fermé.


Merci pour votre commentaire. J'ajoute mon moyen de résoudre la question.


3 Réponses :


0
votes

Vous pouvez le faire: xxx

plus sur pandas ici: https://pandas.pydata.org/docs/user_guide/index.html


1 commentaires

Merci pour votre commentaire. En fait, je ne sais pas qui est l'équipe la plus précieuse, doit comparer les "buts", "cartes jaunes" et "cartes rouges". Comment puis je faire ça ?



0
votes

Est-ce ce que vous recherchez?

df[df['Team'].eq('Germany')]
      Team  Goals  Yellow Cards  Red Cards
5  Germany     10             4          0


1 commentaires

Je ne sais pas qui est l'équipe la plus précieuse, devez comparer les "buts", "cartes jaunes" et "cartes rouges". Comment puis je faire ça ? Merci pour votre commentaire.



0
votes
import pandas

df =pandas.DataFrame({'Team':['Croatia','Czech Republic',
'Denmark','England','France','Germany', 
'Greece','Italy','Netherlands','Poland','Portugal','Republic of Ireland',
'Russia','Spain','Sweden','Ukraine'],
'Goals':[4,4,4,5,3,10,5,6,2,2,6,1,5,12,5,2],
'Yellow Cards':[9,7,4,5,6,4,9,16,5,7,12,6,6,11,7,5],
'Red Cards':[0,0,0,0,0,0,1,0,0,1,0,1,0,0,0,0]})

scores = df['Goals'] - df['Yellow Cards'] - df['Red Cards']
df2 = pandas.DataFrame({'Team': df['Team'],'score':scores})
print(df2['Team'][df2['score'].idxmax()])
is that what you mean?

1 commentaires

vous vous éclaircissez, merci. Je peux obtenir le tarif: DF ["Cartes jaunes"] / DF ['buts'], puis triez le taux.