Maison >développement back-end >Tutoriel Python >Utilisation de Python pour analyser les données de la feuille de calcul
Traiter 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:
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:
<code class="language-bash">pip3 install pandas</code>
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:
Tout d'abord, ouvrons un fichier dans Python. L'exemple de feuille de calcul suivant (fourni par le conteneur d'apprentissage):
<code class="language-bash">pip3 install pandas</code>
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:
<code class="language-python">import pandas as pd workbook = pd.read_excel('sample-xlsx-file-for-testing.xlsx') workbook.head()</code>
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:
<code class="language-python">import sys workbook = pd.read_excel('sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding())</code>
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.
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):
<code class="language-python">workbook = pd.read_excel('~/Desktop/import-export-data.xlsx', usecols = 'A:E') workbook.head()</code>
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:
<code class="language-python"># 读取名为'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)</code>
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:
<code class="language-python"># 读取前两个工作表和名为'Sheet 3'的工作表 worksheets = pd.read_excel('~/Desktop/import-export-data.xlsx', sheet_name = [0, 1, 'Sheet 3'])</code>
.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:
<code class="language-python">import pandas as pd workbook = pd.read_excel('sample-xlsx-file-for-testing.xlsx') # 打印'Product'列的第一个值 print(workbook['Product'].iloc[0]) => Carretera</code>
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.
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:
<code class="language-python">print(workbook['Product'].loc[0]) => Carretera</code>
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é:
<code class="language-python">import pandas as pd name = ['John', 'Mary', 'Sherlock'] age = [11, 12, 13] df = pd.DataFrame({ 'Name': name, 'Age': age }) df.index.name = 'ID'</code>
peut également utiliser la fonction read_excel()
pour ouvrir le même fichier.
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:
<code class="language-python">df.to_excel('my_file.xlsx')</code>
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
<code class="language-python">df.to_excel('my_file.xlsx', sheet_name = 'My Sheet')</code>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
<code class="language-python">import pandas as pd workbook = pd.read_excel('my_file.xlsx') # 创建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')</code>De plus, utilisez
et date_format
pour définir les valeurs de date et de temps: datetime_format
<code class="language-bash">pip3 install pandas</code>
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:
<code class="language-python">import pandas as pd workbook = pd.read_excel('sample-xlsx-file-for-testing.xlsx') workbook.head()</code>
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:
<code class="language-python">import sys workbook = pd.read_excel('sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding())</code>
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:
<code class="language-python">workbook = pd.read_excel('~/Desktop/import-export-data.xlsx', usecols = 'A:E') workbook.head()</code>
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:
pandas.read_excel()
pour lire les fichiers Excel. pandas.read_csv()
. pip install pandas
et pip 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!