0
votes

Comment puis-je regrouper l'élément et les énumérer ensemble dans Python Pandas?

J'ai quelque chose comme ceci: xxx pré>

Je veux une liste de sous-tableau composée de 3 valeurs telles que ceci: p>

df.values.tolist()


0 commentaires

3 Réponses :


1
votes

IIUC

df=df.set_index('time')
df.groupby(np.arange(df.shape[1])//3,axis=1).agg(lambda x : x.values.tolist()).values.tolist()
[[[32, 12, 56], [45, 3, 67]], [[60, 34, 2], [5, 13, 90]]]


2 commentaires

Cela me donne une erreur sur 'Time'. Peut-il être que ce n'est pas un index?


@Hugob Vous pouvez le laisser tomber df = df.drop ('Time', 1)



0
votes
import pandas as pd

data= [[0,32,60],[1,12,34],[2,56,2],[3,45,5],[4,3,13],[5,67,90]]

df = pd.DataFrame(data, columns = ["time","val1","val2"])

0 commentaires

0
votes

Convertissez d'abord l'ensemble de l'ensemble de données à la liste, suivi en divisant chacune de ces listes dans 2 listes distinctes.

df2=df.values.tolist() #Convert the DataFrame to List
lst_split=[]
for lst in df2:
    temp1=lst[:len(lst)//2] #Create First Half of the split
    temp2=lst[len(lst)//2:] #Create Second Half of the split
    lst_split.append(temp1)
    lst_split.append(temp2) #Appending to the Final list


1 commentaires

Ajout de certaines explications peut également aider à mieux comprendre la réponse.