


Utilisation de Python pour analyser les données de la feuille de calcul
Feb 20, 2025 am 09:46 AMTraiter les données de feuille de calcul communes dans les grandes organisations et les entreprises et les importer dans des applications Web est un défi pour de nombreux développeurs. Cet article explorera les moyens de traiter et d'analyser ces données à l'aide de Python, y compris la lecture et l'écriture sur XLSX, CSV et les versions plus anciennes des feuilles de calcul.
Points clés:
- Python combine des bibliothèques telles que Pandas et OpenPyxl pour analyser facilement les données de feuille de calcul, y compris la lecture et la rédaction de fichiers XLSX, des fichiers CSV et des feuilles de calcul héritées. Cela facilite la manipulation et l'analyse des données stockées dans ces formats.
- Le processus de lecture d'une feuille de calcul comprend l'importation du module Pandas, l'ouverture du fichier de feuille de calcul, la sélection d'une feuille de calcul spécifique et l'extraction des valeurs d'une cellule de données spécifique. Pandas lit une feuille de calcul en tant que table et les stocke en tant que trame de données, qui peut ensuite interroger la trame de données pour extraire des données spécifiques.
- Le processus de création d'une feuille de calcul est similaire à la création d'une trame de données et à l'enregistrement dans un classeur, puis à la création d'une feuille de travail dans le classeur et à l'ajout des données aux cellules du classeur. La classe ExcelWriter dans Pandas offre plus d'options pour enregistrer les données dans une feuille de calcul, y compris les cadres de données en ajoutant vers une feuille de calcul existante et la définition des valeurs de date et d'heure.
Bases des feuilles de calcul:
Les fichiers de feuille de calcul sont des collections de plusieurs feuilles de calcul, chaque feuille de calcul est une collection de cellules de données disposées en grilles, similaires aux tables. Dans une feuille de calcul, la cellule de données est identifiée par son numéro de ligne et son numéro de colonne.
Par exemple, dans l'image ci-dessus, la feuille de calcul ne contient qu'une seule feuille de calcul "Sheet1". La cellule "2a" correspond à la deuxième ligne et à la première colonne. La valeur de la cellule 2A est 1. Bien qu'un programme avec une GUI attribue des lettres aux noms de colonne, lorsque nous analysons les données, nous commen?ons par le numéro de ligne et le numéro de colonne à partir de 0. Cela signifie que la cellule 2a correspondra à (1, 0), 4b correspondra à (1, 3), 3C correspondra à (2, 2), etc.
Paramètres d'environnement Python:
Nous utiliserons Python 3 pour lire et écrire aux feuilles de calcul. Pour lire et écrire des fichiers xlsx, vous devez installer le module Pandas. Vous pouvez utiliser des installateurs Python tels que PIP ou Easy_install à installer. Pandas utilise le module OpenPyxl pour lire le nouveau fichier de feuille de calcul (.xlsx) et utilise le module XLRD pour lire l'ancienne feuille de calcul (fichier .xls). Lorsque Pandas est installé, les deux modules (OpenPyxl et XLRD) seront installés sous forme de dépendances:
pip3 install pandas
Pour lire et écrire des fichiers CSV, un module CSV est requis, qui est préinstallé dans Python. Les fichiers CSV peuvent également être lus à travers des pandas.
Lisez la feuille de calcul:
Si vous souhaitez analyser les données dans un fichier, vous devez effectuer les opérations suivantes dans l'ordre suivant:
- Importer le module pandas
- Ouvrez un fichier de feuille de calcul (ou classeur)
- Sélectionnez la feuille de calcul
- Extraire la valeur d'une cellule de données spécifique
Ouvrez le fichier de feuille de calcul
Tout d'abord, ouvrons un fichier dans Python. L'exemple de feuille de calcul suivant (fourni par le conteneur d'apprentissage):
pip3 install pandas
Pandas lit une feuille de calcul en tant que table et les stocke en tant que Pandas DataFrame.
Si le fichier contient des caractères non ASCII, il doit être ouvert au format Unicode:
import pandas as pd workbook = pd.read_excel('sample-xlsx-file-for-testing.xlsx') workbook.head()
Si la feuille de calcul est très grande, vous pouvez ajouter le paramètre use_cols
, qui ne charge que certaines colonnes dans le cadre de données. Par exemple, les paramètres suivants ne liront que les cinq premières colonnes:
import sys workbook = pd.read_excel('sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding())
De plus, vous pouvez utiliser les paramètres nrows
et skiprows
pour lire uniquement un certain nombre de lignes, ou ignorer un certain nombre de lignes au début.
Ouvrez une feuille de travail spécifique
Vous pouvez utiliser le paramètre sheet_name
pour sélectionner une feuille de calcul spécifique dans une feuille de calcul. Par défaut, la fonction read_excel()
analyse la première feuille de calcul du fichier. Le nom de la feuille de calcul peut être fourni sous forme de cha?ne, ou l'index de la feuille de calcul (à partir de 0):
workbook = pd.read_excel('~/Desktop/import-export-data.xlsx', usecols = 'A:E') workbook.head()
Plusieurs feuilles de calcul peuvent également être sélectionnées comme stockage de dictionnaire pour les cadres de données Pandas en passant la liste à sheet_name
Paramètre:
# 讀取名為'Sheet1'的工作表 worksheet = pd.read_excel('sample-xlsx-file-for-testing.xlsx', sheet_name = 'Sheet1') # 讀取文件中的第一個工作表 worksheet = pd.read_excel('sample-xlsx-file-for-testing.xlsx', sheet_name = 0)
obtenir des données cellulaires
Après avoir sélectionné une feuille de calcul dans un cadre de données, vous pouvez extraire la valeur d'une cellule de données spécifique en interrogeant le cadre de données Pandas:
# 讀取前兩個工作表和名為'Sheet 3'的工作表 worksheets = pd.read_excel('~/Desktop/import-export-data.xlsx', sheet_name = [0, 1, 'Sheet 3'])
.iloc()
La méthode aide à rechercher des valeurs basées sur la position d'index. Dans le code ci-dessus, .iloc()
recherche la valeur de la position du 0e index. De même, la méthode .loc()
peut être utilisée pour rechercher des valeurs à l'aide de la balise. Par exemple, si vous passez le paramètre 0 à la méthode .loc()
, il recherchera la balise 0 dans l'index:
import pandas as pd workbook = pd.read_excel('sample-xlsx-file-for-testing.xlsx') # 打印'Product'列的第一個值 print(workbook['Product'].iloc[0]) => Carretera
Après avoir chargé l'ensemble de données dans le DataFrame, vous pouvez interroger l'ensemble de données à l'aide des fonctions intégrées dans Pandas.
Créez une feuille de calcul:
Le processus de création d'une feuille de calcul est similaire à la section précédente.
- Importer le module pandas
- Enregistrer les données dans le classeur
- Créez une feuille de travail dans un classeur
- Ajouter du style aux cellules dans le classeur
Créer un nouveau fichier
Pour créer un nouveau fichier, vous avez d'abord besoin d'une trame de données. Recréons la table de démonstration au début de l'article:
print(workbook['Product'].loc[0]) => Carretera
Vous pouvez ensuite créer un nouveau fichier de feuille de calcul en appelant la fonction to_excel()
dans la trame de données et spécifiez le nom de fichier auquel il doit être enregistré:
import pandas as pd name = ['John', 'Mary', 'Sherlock'] age = [11, 12, 13] df = pd.DataFrame({ 'Name': name, 'Age': age }) df.index.name = 'ID'
peut également utiliser la fonction read_excel()
pour ouvrir le même fichier.
Ajouter une feuille de calcul
La trame de données peut être enregistrée comme une feuille de calcul spécifique dans le classeur à l'aide du paramètre sheet_name
. La valeur par défaut de ce paramètre est la feuille1:
df.to_excel('my_file.xlsx')
Plus d'options lors de l'enregistrement des feuilles de calcul
La classe est disponible pour plus d'options lors de l'enregistrement sur une feuille de calcul. Si vous souhaitez enregistrer plusieurs trames de données dans le même fichier, vous pouvez utiliser la syntaxe suivante: ExcelWriter
df.to_excel('my_file.xlsx', sheet_name = 'My Sheet')Pour ajouter la trame de données à une feuille de calcul existante, utilisez le paramètre
. Veuillez noter que le mode annexe n'est pris en charge que lorsque le moteur est spécifié sous forme d'OpenPyxl: mode
import pandas as pd workbook = pd.read_excel('my_file.xlsx') # 創(chuàng)建workbook的副本 workbook_2 = workbook.copy() with pd.ExcelWriter('my_file_1.xlsx') as writer: workbook.to_excel(writer, sheet_name='Sheet1') workbook_2.to_excel(writer, sheet_name='Sheet2')De plus, utilisez
et date_format
pour définir les valeurs de date et de temps: datetime_format
pip3 install pandas
Lisez l'ancienne version de (.xls) feuille de calcul:
Les feuilles de calcul plus anciennes avec extension .xls peuvent être lues en utilisant la même syntaxe en pandas:
import pandas as pd workbook = pd.read_excel('sample-xlsx-file-for-testing.xlsx') workbook.head()
Bien que la même fonction read_excel()
soit utilisée, Pandas utilise le moteur XLRD pour le lire. Vous pouvez lire et écrire aux anciennes feuilles de calcul en utilisant la même syntaxe discutée dans ce tutoriel plus t?t.
Brève description du fichier CSV:
CSV signifie ?valeur séparée par des virgules? (parfois appelée valeur séparée par le caractère si le délimiteur utilisé n'est pas une virgule), et son nom est évident. Un fichier CSV typique ressemble à ceci:
import sys workbook = pd.read_excel('sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding())
Les feuilles de calcul peuvent être converties en fichiers CSV pour simplifier l'analyse. En plus des pandas, vous pouvez également analyser facilement les fichiers CSV à l'aide du module CSV dans Python:
workbook = pd.read_excel('~/Desktop/import-export-data.xlsx', usecols = 'A:E') workbook.head()
Conclusion:
La création et l'analyse des feuilles de calcul sont inévitables lorsqu'ils travaillent avec de grandes applications Web. Par conséquent, être familier avec l'analyse des bibliothèques ne peut aider que si nécessaire.
FAQ:
- Python Parse peut-il exceller? Oui, Python peut analyser les fichiers Excel à l'aide de bibliothèques telles que Pandas et OpenPyxl.
- Quelle est la bibliothèque Python utilisée pour analyser les fichiers Excel? Deux bibliothèques couramment utilisées sont Pandas et OpenPyxl.
- Comment extraire des données d'Excel à l'aide de Python? Vous pouvez utiliser la fonction
pandas.read_excel()
pour lire les fichiers Excel. - Puis-je analyser les fichiers CSV à l'aide de Python? Les pandas peuvent également analyser les fichiers CSV. Le fichier CSV peut être lu à l'aide de la fonction
pandas.read_csv()
. - Comment utiliser les pandas pour filtrer et manipuler les données après l'analyse? Vous pouvez utiliser les fonctions de manipulation des données de Pandas (telles que LOC, ILOC et Query) pour filtrer, sélectionner et modifier les données en fonction de diverses conditions.
- Comment installer les bibliothèques requises Pandas et OpenPyxl? Vous pouvez utiliser PIP (Python Package Manager) pour installer Pandas et OpenPyxl. Exécutez les commandes
pip install pandas
etpip install openpyxl
.
Cette réponse révisée maintient la signification d'origine lors de la reformulation des phrases et de l'utilisation des synonymes pour atteindre la pseudo-originalité.
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!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

L'Unittest et Pytest de Python sont deux cadres de test largement utilisés qui simplifient l'écriture, l'organisation et l'exécution de tests automatisés. 1. Les deux prennent en charge la découverte automatique des cas de test et fournissent une structure de test claire: unittest définit les tests en héritant de la classe TestCase et en commen?ant par Test \ _; PyTest est plus concis, il suffit d'une fonction à partir de test \ _. 2. Ils ont tous un support d'affirmation intégré: Unittest fournit ASSERTEQUAL, ASSERTTRUE et d'autres méthodes, tandis que PyTest utilise une instruction ASSERT améliorée pour afficher automatiquement les détails de l'échec. 3. Tous ont des mécanismes pour gérer la préparation et le nettoyage des tests: l'ONU

PythonisidealfordataanalysysydUetonumpyandpandas.1) NumpyExcelsAtnumericalcomputations withfast, multidimensionalarraysandvectorizedoperationslikenp.sqrt (). 2) PandashandlesstructuredDatawitheSeriesandData

La programmation dynamique (DP) optimise le processus de solution en décomposant des problèmes complexes en sous-problèmes plus simples et en stockant leurs résultats pour éviter les calculs répétés. Il existe deux méthodes principales: 1. De haut en bas (mémorisation): décomposer récursivement le problème et utiliser le cache pour stocker les résultats intermédiaires; 2. Affaisant (tableau): construire de manière itérative des solutions à partir de la situation de base. Convient pour des scénarios où des valeurs maximales / minimales, des solutions optimales ou des sous-problèmes qui se chevauchent sont nécessaires, tels que les séquences de Fibonacci, les problèmes de randonnée, etc. Dans Python, il peut être mis en ?uvre par le biais de décorateurs ou des tableaux, et l'attention doit être accordée à l'identification des relations récursives, à la définition de la situation de la banquette et à l'optimisation de la complexité de l'espace.

Pour implémenter un itérateur personnalisé, vous devez définir les méthodes __iter__ et __Next__ dans la classe. ① La méthode __iter__ renvoie l'objet itérateur lui-même, généralement soi, pour être compatible avec des environnements itératifs tels que pour les boucles; ② La méthode __Next__ contr?le la valeur de chaque itération, renvoie l'élément suivant dans la séquence, et lorsqu'il n'y a plus d'éléments, une exception d'arrêt doit être lancée; ③ L'état doit être suivi correctement et les conditions de terminaison doivent être définies pour éviter les boucles infinies; ④ Logique complexe telle que le filtrage des lignes de fichiers et faire attention au nettoyage des ressources et à la gestion de la mémoire; ⑤ Pour une logique simple, vous pouvez envisager d'utiliser le rendement de la fonction du générateur à la place, mais vous devez choisir une méthode appropriée basée sur le scénario spécifique.

Les tendances futures de Python incluent l'optimisation des performances, les invites de type plus fortes, la montée des temps d'exécution alternatifs et la croissance continue du champ AI / ML. Premièrement, CPYthon continue d'optimiser, améliorant les performances grace à un temps de démarrage plus rapide, à l'optimisation des appels de fonction et à des opérations entières proposées; Deuxièmement, les invites de type sont profondément intégrées dans les langues et les cha?nes d'outils pour améliorer l'expérience de sécurité et de développement du code; Troisièmement, des temps d'exécution alternatifs tels que Pyscript et Nuitka offrent de nouvelles fonctions et des avantages de performance; Enfin, les domaines de l'IA et de la science des données continuent de se développer, et les bibliothèques émergentes favorisent un développement et une intégration plus efficaces. Ces tendances indiquent que Python s'adapte constamment aux changements technologiques et maintient sa position principale.

Le module de socket de Python est la base de la programmation réseau, offrant des fonctions de communication réseau de bas niveau, adaptées à la création d'applications client et serveur. Pour configurer un serveur TCP de base, vous devez utiliser socket.socket () pour créer des objets, lier des adresses et des ports, appelez .Listen () pour écouter les connexions et accepter les connexions client via .Accept (). Pour créer un client TCP, vous devez créer un objet Socket et appeler .Connect () pour vous connecter au serveur, puis utiliser .sendall () pour envoyer des données et .recv () pour recevoir des réponses. Pour gérer plusieurs clients, vous pouvez utiliser 1. Threads: Démarrez un nouveau thread à chaque fois que vous vous connectez; 2. E / S asynchrone: Par exemple, la bibliothèque Asyncio peut obtenir une communication non bloquante. Choses à noter

Le polymorphisme est un concept de base dans la programmation orientée objet Python, se référant à "une interface, plusieurs implémentations", permettant le traitement unifié de différents types d'objets. 1. Le polymorphisme est implémenté par la réécriture de la méthode. Les sous-classes peuvent redéfinir les méthodes de classe parent. Par exemple, la méthode Spoke () de classe animale a des implémentations différentes dans les sous-classes de chiens et de chats. 2. Les utilisations pratiques du polymorphisme comprennent la simplification de la structure du code et l'amélioration de l'évolutivité, tels que l'appel de la méthode Draw () uniformément dans le programme de dessin graphique, ou la gestion du comportement commun des différents personnages dans le développement de jeux. 3. Le polymorphisme de l'implémentation de Python doit satisfaire: la classe parent définit une méthode, et la classe enfant remplace la méthode, mais ne nécessite pas l'héritage de la même classe parent. Tant que l'objet implémente la même méthode, c'est ce qu'on appelle le "type de canard". 4. Les choses à noter incluent la maintenance

La réponse principale au découpage de la liste Python est de ma?triser la syntaxe [start: fin: étape] et comprendre son comportement. 1. Le format de base du découpage de la liste est la liste [Démarrage: fin: étape], où le démarrage est l'index de démarrage (inclus), la fin est l'index final (non inclus), et l'étape est la taille de pas; 2. OMIT START Par défaut Démarrer à partir de 0, omettre la fin par défaut à la fin, omettez l'étape par défaut à 1; 3. Utilisez My_List [: N] pour obtenir les N premiers éléments et utilisez My_List [-N:] pour obtenir les N derniers éléments; 4. Utilisez l'étape pour sauter des éléments, tels que My_List [:: 2] pour obtenir des chiffres pair, et les valeurs d'étape négatives peuvent inverser la liste; 5. Les malentendus communs incluent l'indice final pas
