Maison > développement back-end > Tutoriel Python > Comment puis-je diviser efficacement un DataFrame Pandas en DataFrames spécifiques aux participants ?

Comment puis-je diviser efficacement un DataFrame Pandas en DataFrames spécifiques aux participants ?

DDD
Libérer: 2024-11-30 20:07:14
original
368 Les gens l'ont consulté

How Can I Efficiently Split a Pandas DataFrame into Participant-Specific DataFrames?

Diviser le dataframe en dataframes spécifiques aux participants

Vous disposez d'un grand dataframe avec les données de 60 répondants et vous cherchez un moyen de le diviser en des dataframes individuelles pour chaque participant. Le code unique de chaque participant est stocké dans une variable appelée « nom ».

Au départ, vous avez tenté d'utiliser une fonction personnalisée pour ajouter des trames de données basées sur la variable « nom », mais l'exécution a pris un temps inhabituellement long. .

Une approche plus efficace consiste à utiliser le découpage dans Pandas DataFrame. Le code suivant fournit une solution :

import pandas as pd
import numpy as np

# Create sample data with a 'Names' column
data = pd.DataFrame({'Names': ['Joe', 'John', 'Jasper', 'Jez'] * 4,
                     'Ob1': np.random.rand(16),
                     'Ob2': np.random.rand(16)})

# Create a unique list of names
UniqueNames = data.Names.unique()

# Create a dictionary to store the split dataframes
DataFrameDict = {elem: pd.DataFrame() for elem in UniqueNames}

# Iterate through UniqueNames and slice the original data
for key in DataFrameDict.keys():
    DataFrameDict[key] = data[data.Names == key]

# Access a specific dataframe using its name
specific_dataframe = DataFrameDict['Joe']
Copier après la connexion

Cette approche crée rapidement des trames de données individuelles pour chaque participant, la colonne « Noms » étant utilisée pour le découpage. Les dataframes résultantes sont organisées dans un dictionnaire, DataFrameDict, permettant un accès facile.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal