J'ai un dataframe qui a les colonnes ci-dessous
Record Type Value 100 1,2,3,4,5 200 0,10 300 1
Résultats attendus:
list1 = [1,2,3,4,5]
3 Réponses :
df.values.tolist () est ce que vous cherchez :)
Cela convertira l'ensemble du dataframe en listes, ce que je ne voudrais pas. Je demande seulement que la valeur du type d'enregistrement 100 (1, 2, 3, 4, 5) soit convertie en liste et pas les autres.
Il semble que vos valeurs "Valeur" soient de type chaîne de données, donc ce code mappe simplement la valeur de chaîne à une liste d'entiers.
list1 = list (map (int, df ['Value'] [0] .split (",")))
Merci. fonctionne parfaitement. pouvons-nous obtenir la liste en fonction de la condition "Type d'enregistrement". Par exemple, le type d'enregistrement 100 doit renvoyer [1,2,3,4,5] pour le type d'enregistrement 200, il doit renvoyer [0,10]?
@rmutalik @ Que faire si la colonne entière doit être convertie en liste? Comme - Valeur du type d'enregistrement 100 [1,2,3,4,5] 200 [0,10] 300 [1]
Peut-être de cette façon:
import pandas as pd
df = pd.DataFrame({'Record Type': ['100', '200', '300'],
'Value': [(1,2,3,4,5), (0,10), 1]})
def returnlist(df):
v = []
for i in range(df.shape[0]):
if type(df['Value'][i]) != int:
x = list(df['Value'][i])
v.append(x)
return v