0
votes

Compter les valeurs dans une plage

J'essaie d'obtenir le nombre d'employés avec un salaire dans une certaine gamme. Comment puis-je émettre le numéro uniquement pour la colonne "Salaire".

salaryEmp = data4[data4.Salary.between(100, 500)].count()


3 commentaires

Je suis confus à propos de cet échantillon de code. Est-ce que ça marche? Sinon, qu'est-ce que ça fait?


Oui, et il répertorie toutes les colonnes et génère le numéro à côté de chaque colonne.


Que voulez-vous dire qu'il "génère le numéro à côté de chaque colonne"? Je ne vois aucune déclaration Imprimer dans ce code.


3 Réponses :


2
votes

Vous pouvez essayer valeur_counts xxx


0 commentaires

0
votes

Je ferais quelque chose comme:

len (Data4 [(Data4.Salary> 100) & (Data4.Salary <500)])


2 commentaires

Utilisation de Pure-Python Somme n'est pas optimal ici, sera très lente car elle itère à travers les valeurs. En outre, votre solution ne fonctionne que si vous n'avez qu'une seule colonne. Si vous en avez plus de deux, cela donnera une erreur ou une mauvaise réponse.


Vous pouvez conserver la somme, il suffit d'utiliser data4.loc [(Data4.Salary> 100) & (Data4.Salary <500), 'Salaire']. Somme () IE Utilisez des pandas vectorisés somme () à la fin



1
votes

Utilisez

df.loc[df.Salary.between(100,500), 'Salary'].count()


0 commentaires