Maison > développement back-end > Tutoriel Python > Comment puis-je charger efficacement des feuilles de calcul spécifiques à partir d'un gros fichier Excel avec Pandas ?

Comment puis-je charger efficacement des feuilles de calcul spécifiques à partir d'un gros fichier Excel avec Pandas ?

DDD
Libérer: 2024-11-29 01:36:12
original
606 Les gens l'ont consulté

How Can I Efficiently Load Specific Worksheets from a Large Excel File with Pandas?

Charger efficacement des feuilles de calcul spécifiques à partir d'un classeur avec Pandas

La fonction pd.read_excel() de Pandas est un outil puissant pour lire des classeurs Excel. Cependant, lorsque vous travaillez avec des fichiers volumineux contenant plusieurs feuilles de calcul, le chargement de l'intégralité du classeur peut s'avérer inefficace, surtout si vous n'avez besoin que des données de quelques feuilles spécifiques.

Comprendre le processus de chargement avec pd.read_excel( )

Lors de l'utilisation de pd.read_excel() sur une feuille de calcul particulière, il semble que l'intégralité du classeur soit chargée en mémoire. En effet, pandas utilise en interne un objet ExcelFile pour représenter le classeur. L'objet ExcelFile analyse l'intégralité du fichier lors de son initialisation, quelle que soit la feuille de calcul spécifiée.

Chargement efficace de feuilles spécifiques

Pour optimiser le processus de chargement, pensez à utiliser le pd Objet .ExcelFile directement. En instanciant un objet ExcelFile avec le chemin du classeur, vous pouvez accéder à des feuilles de calcul spécifiques sans recharger l'intégralité du fichier.

Par exemple :

xls = pd.ExcelFile('path_to_file.xls')
df1 = pd.read_excel(xls, 'Sheet1')
df2 = pd.read_excel(xls, 'Sheet2')
Copier après la connexion

Cette approche charge l'intégralité du classeur une seule fois lors de la création. de l'objet ExcelFile. Les appels ultérieurs à pd.read_excel() récupéreront les données des feuilles de calcul spécifiées sans entraîner la surcharge liée au rechargement du fichier.

Chargement de plusieurs feuilles

De plus, vous peut spécifier une liste de noms de feuilles ou d'index à pd.read_excel() pour charger plusieurs feuilles simultanément. Cela renvoie un dictionnaire où les clés sont les noms ou les indices des feuilles, et les valeurs sont les blocs de données correspondants.

Par exemple :

sheet_list = ['Sheet1', 'Sheet2']
df_dict = pd.read_excel(xls, sheet_list)
Copier après la connexion

Chargement de toutes les feuilles

Si vous devez charger toutes les feuilles de calcul du classeur, définissez le paramètre sheet_name sur Aucun :

df_dict = pd.read_excel(xls, sheet_name=None)
Copier après la connexion

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!

source:php.cn
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