Maison > développement back-end > Tutoriel Python > Explication détaillée de read_excel dans Python 2.7 pandas

Explication détaillée de read_excel dans Python 2.7 pandas

不言
Libérer: 2018-05-04 14:19:35
original
3681 Les gens l'ont consulté

Cet article présente principalement l'explication détaillée de read_excel dans Python 2.7 pandas. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer

Importer. Module pandas :

import pandas as pd
Copier après la connexion

Utilisez import pour lire le module pandas et utilisez son abréviation pd pour plus de commodité.

Lire le fichier Excel à traiter :

df = pd.read_excel('log.xls')
Copier après la connexion

En utilisant read_excel La fonction lit le fichier Excel et doit être remplacée par le chemin où se trouve le fichier Excel. Après lecture, il devient un objet Pandas DataFrame. DataFrame est une structure de tableau bidimensionnel orientée colonnes et contient des listes et des étiquettes de ligne. Les opérations sur les fichiers Excel sont converties en opérations sur DataFrame. De plus, si un Excel contient plusieurs tableaux, si vous ne souhaitez en lire qu'un seul :

df = pd.read_excel('log.xls', sheetname=1)
Copier après la connexion

Un paramètre nom de feuille est ajouté, ce qui signifie que Le le nombre de tables commence à compter à partir de 0. Ce que j'ai défini ci-dessus est 1, qui est le deuxième tableau.

Après la lecture, vous pouvez d'abord vérifier les informations d'en-tête et le type de données de chaque colonne :

df.dtypes
Copier après la connexion

Le résultat est le suivant :

Member   object
Unnamed: 1 float64
Unnamed: 2 float64
Unnamed: 3 float64
Unnamed: 4 float64
Unnamed: 5 float64
家内外活动类型  object
Unnamed: 7  object
activity  object
dtype: object
Copier après la connexion

Extraire la dernière ligne de données qui apparaît en continu pour chaque membre :

new_df = df.drop_duplicates(subset='Member', keep='last')
Copier après la connexion

L'instruction ci-dessus signifie supprimer les lignes redondantes en fonction du champ Membre et conserver la dernière ligne de données dans la même ligne. Cela obtiendra les données de la dernière ligne de chaque membre et renverra le DataFrame filtré.

Ensuite, vous devez enregistrer les résultats traités sous forme de fichier Excel :

out = pd.ExcelWriter('output.xls')
new_df.to_excel(out)
out.save()
Copier après la connexion

output.xls est le nom du fichier que vous souhaitez enregistrer, vous pouvez en choisir un ; puis enregistrer le contenu du DataFrame dans le fichier, et enfin enregistrer le fichier sur le disque système.

Ensuite, vous verrez un nouveau fichier dans le répertoire actuel, qui peut être ouvert et visualisé directement à l'aide d'Excel.

Pandas fournit également de nombreuses API. Vous pouvez rechercher dans la documentation de l'API et trouver la fonction appropriée pour effectuer la tâche en fonction de la tâche spécifique.

Ci-joint : Un exemple complet

#coding=utf-8
import pandas as pd
 
# 读入excel文件中的第2个表
df = pd.read_excel('log.xls', sheetname=1)
# 查看表的数据类型
print df.dtypes
# 查看Member列的数据
print df['Member']
 
'''
# 新建一列,每一行的值是Member列和activity列相同行值的和
for i in df.index:
 df['activity_2'][i] = df['Member'][i] + df['activity'][i]
'''
 
# 根据Member字段去除掉多余的行,并且保留相同行的最后一行数据
new_df = df.drop_duplicates(subset='Member', keep='last')
# 导出结果
out = pd.ExcelWriter('output.xls')
new_df.to_excel(out)
out.save()
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!

Étiquettes associées:
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