Itération sur un DataFrame (pandas) [Python] - Python - Programmation
Marsh Posté le 03-06-2021 à 14:06:20
Ok, je n'avais rien compris à la fonction iloc qui prend en paramètre un élément de l'index et pas son ordre (j'aurais du mettre un timestamp).
Si jamais un débutant tombe sur le même soucis que moi, j'ai utilisé les listes compréhension :
Code :
|
Si quelqu'un a une meilleure solution je suis preneur !
Merci !
Marsh Posté le 04-06-2021 à 10:11:38
Bon ça ne fonctionne pas, le calcul n'est pas fait de manière séquentielle.
Je vais utiliser la méthode DataFrame.itertuples()
Marsh Posté le 02-06-2021 à 18:14:39
Bonjour à tous,
Pour commencer, je tiens à préciser que je suis nouveau sur ce forum et ultra-débutant en Python.
Toutes mes excuses si ma question vous parait stupide.
Etant habitué à coder en Java, j'ai du mal à appréhender certains aspect du langage (sans parler du débuggage...)
Voici mon problème :
J'ai un objet data de type <class 'pandas.core.frame.DataFrame'> dont voici un échantillon :
value
timestamp
2020-08-11 06:00:00 2.9515
2020-08-11 07:00:00 2.9224
2020-08-11 08:00:00 2.9600
2020-08-11 09:00:00 2.8543
2020-08-11 10:00:00 2.8976
Je souhaiterais ajouter une colonne à ce dataFrame, cette nouvelle colonne contenant un filtre de la colonne value.
La nouvelle colonne "Filter" doit contenir des valeurs dont la formule est du type data['Filter'][i] = a * data['Value'][i] + b*data['Value'][i-1] +c* data['Filter'][i-1].
J'ai essayé de parcourir data avec un index i et récupérer la ligne correspondante avec data.iloc(i) mais j'obtiens une erreur "ValueError: No axis named 5 for object type DataFrame"
Quelqu'un pour éclairer ma lanterne ?
Merci !