Comment puis-je prendre plusieurs listes et les mettre en tant que colonnes différentes dans un dataframe python? J'ai essayé cette solution mais j'ai eu quelques problèmes.
Tentative 1:
- Ayez trois listes, fermez-les ensemble et utilisez-les
res = zip(lst1,lst2,lst3)
- Donne une seule colonne
Tentative 2:
percentile_list = pd.DataFrame({'lst1Tite' : [lst1],
'lst2Tite' : [lst2],
'lst3Tite' : [lst3] },
columns=['lst1Tite','lst1Tite', 'lst1Tite'])
- donne soit une ligne par 3 colonnes (comme ci-dessus) soit si je transpose c'est 3 lignes et 1 colonne
Comment obtenir une trame de données pandas de 100 lignes (longueur de chaque liste indépendante) par 3 colonnes (trois listes)?
Ajout à la réponse d' Aditya Guru ici. Il n'est pas nécessaire d'utiliser la carte. Vous pouvez le faire simplement en:
Cela définira les noms des colonnes comme 0,1,2. Pour définir vos propres noms de colonne, vous pouvez transmettre l'argument mot-clé
columns
à la méthode ci-dessus.la source
pd.DataFrame(zip(lst1, lst2, lst3))
devrait aussi faire.En ajoutant simplement qu'en utilisant la première approche, cela peut être fait comme -
la source
Ajout d'une autre solution évolutive.
la source
En ajoutant aux réponses ci-dessus, nous pouvons créer à la volée
J'espère que ça aide !
la source
@oopsi a utilisé
pd.concat()
mais n'a pas inclus les noms de colonne. Vous pouvez faire ce qui suit, ce qui, contrairement à la première solution de la réponse acceptée, vous donne le contrôle sur l'ordre des colonnes (évite les dicts, qui ne sont pas ordonnés):la source
Il existe plusieurs façons de créer une trame de données à partir de plusieurs listes.
pd.DataFrame({'list1':list1, 'list2':list2, 'list3'=list3})
pd.DataFrame(data=zip(list1,list2,list3),columns=['list1','list2','list3'])
la source
vous pouvez simplement utiliser ce code suivant
la source