-2
votes

Pour sélectionner une ligne et une colonne particulières dans DataFrame

Mon exigence est un peu complexe bit

ci-dessous donne est un DataFrame DF: xxx

donc ce que je veux, je veux enregistrer toutes ces valeurs dans une variables distinctes.

Par exemple, le résultat final doit être: xxx

Le résultat ci-dessus peut être obtenu en utilisant le code suivant: xxx < / Pré>

Mais le défi que je suis confronté ici est que les colonnes ne sont pas toujours constantes. Parfois, il aura de la valeur pour tous les 6 mois, il n'y a pas de temps.

par exemple: xxx

attendu Résultat

Je veux obtenir des données individuelles pendant tous les mois (jusqu'à 6 mois). Si dans le cas de l'exemple ci-dessus de 3 mois de données, je souhaite remplir le reste de la valeur des mois (c.-à-d. mois 4 à mois 6 pour être '0'

Quelqu'un peut-il m'aider s'il vous plaît à ce sujet?


5 commentaires

Avez-vous essayé d'utiliser un dictionnaire au lieu de variables: pandas.dataframe.to_dict?


En effet, à la fin, je gave pour enregistrer toutes ces données individuelles dans CSV, donc dataframe.to_dict ne m'a pas donné une réponse satisfaisante


Qu'en est-il de la boucle à travers les clés dictées?


Comment je fais ça?


Pour la clé, la valeur dans my_dict.items ():


3 Réponses :


0
votes

2 commentaires

Qu'en est-il du cas de 3 mois que j'ai mentionné dans la question. Je veux que le reste des valeurs soit rempli avec 0 si ce mois-ci n'est pas présent


Eh bien, vous pouvez voir ce qui se trouve dans la ligne et remplir les autres valeurs à la main dans une boucle. Si ligne ['mois_4'] retourne erreur ou null ou quoi que ce soit simplement mettre 0 dans sa place



1
votes

Utiliser to_dict . Voir si cela fonctionne pour vous

df xxx

sortie xxx

< / p>

df xxx

sortie xxx

sortie xxx


0 commentaires

0
votes

Ceci a effectivement travaillé et résolu mon problème

try:
    if df.at['Credit', 'Month4']:
    SalaryMonth4 = df.at['Salary', 'Month4']
except:
    SalaryMonth4 = 0


0 commentaires