


Trente fonctions Python résolvent 99% des tâches de traitement de données !
Nous savons que Pandas est la bibliothèque d'analyse et de manipulation de données la plus utilisée en Python. Il fournit de nombreuses fonctions et méthodes pour résoudre rapidement les problèmes de traitement des données lors de l'analyse des données.
Afin de mieux maîtriser l'utilisation des fonctions Python, j'ai pris comme exemple l'ensemble de données de désabonnement des clients pour partager les 30 fonctions et méthodes les plus couramment utilisées dans le processus d'analyse des données. Les données peuvent être téléchargées à la fin de l'article. .
Les données ressemblent à ceci :
import numpy as np import pandas as pd df = pd.read_csv("Churn_Modelling.csv") print(df.shape) df.columns
Sortie du résultat
(10000, 14) Index(['RowNumber', 'CustomerId', 'Surname', 'CreditScore', 'Geography','Gender', 'Age', 'Tenure', 'Balance', 'NumOfProducts', 'HasCrCard','IsActiveMember', 'EstimatedSalary', 'Exited'],dtype='object')
1. Supprimer les colonnes
df.drop(['RowNumber', 'CustomerId', 'Surname', 'CreditScore'], axis=1, inplace=True) print(df[:2]) print(df.shape)
Sortie du résultat
Description : Le paramètre "axis" est défini sur 1 pour placer des colonnes et sur 0 pour placer des lignes. Définissez le paramètre "inplace=True" sur True pour enregistrer les modifications. Nous avons soustrait 4 colonnes, le nombre de colonnes a donc été réduit de 14 à 10.
GeographyGenderAgeTenureBalanceNumOfProductsHasCrCard 0FranceFemale 42 20.011 IsActiveMemberEstimatedSalaryExited 0 1101348.88 1 (10000, 10)
2.Sélectionnez des colonnes spécifiques
Nous lisons les données de colonnes partielles à partir du fichier csv. Le paramètre usecols peut être utilisé.
df_spec = pd.read_csv("Churn_Modelling.csv", usecols=['Gender', 'Age', 'Tenure', 'Balance']) df_spec.head()
3.nrows
Vous pouvez utiliser le paramètre nrows pour créer un bloc de données contenant les 5000 premières lignes du fichier csv. Vous pouvez également utiliser le paramètre skiprows pour sélectionner des lignes à partir de la fin du fichier. Skiprows=5000 signifie que nous sauterons les 5000 premières lignes lors de la lecture du fichier csv.
df_partial = pd.read_csv("Churn_Modelling.csv", nrows=5000) print(df_partial.shape)
4. Échantillon
Après avoir créé le bloc de données, nous aurons peut-être besoin d'un petit échantillon pour tester les données. Nous pouvons utiliser le paramètre n ou frac pour déterminer la taille de l'échantillon.
df= pd.read_csv("Churn_Modelling.csv", usecols=['Gender', 'Age', 'Tenure', 'Balance']) df_sample = df.sample(n=1000) df_sample2 = df.sample(frac=0.1)
5. Vérifier les valeurs manquantes
La fonction isna détermine les valeurs manquantes dans un bloc de données. En utilisant isna avec la fonction somme, nous pouvons voir le nombre de valeurs manquantes dans chaque colonne.
df.isna().sum()
6. Utilisez loc et iloc pour ajouter les valeurs manquantes
Utilisez loc et iloc pour ajouter les valeurs manquantes :
- loc : Sélectionnez avec l'étiquette
- iloc : Sélectionnez l'index .
Nous créons d’abord 20 index aléatoires à sélectionner.
missing_index = np.random.randint(10000, size=20)
Nous utiliserons loc pour changer certaines valeurs en np.nan (valeurs manquantes).
df.loc[missing_index, ['Balance','Geography']] = np.nan
Il manque 20 valeurs dans les colonnes "Solde" et "Géographie". Faisons un autre exemple en utilisant iloc.
df.iloc[missing_index, -1] = np.nan
7. Remplir les valeurs manquantes
La fonction fillna est utilisée pour remplir les valeurs manquantes. Il offre de nombreuses options. Nous pouvons utiliser une valeur spécifique, une fonction agrégée telle que la moyenne, ou la valeur précédente ou suivante.
avg = df['Balance'].mean() df['Balance'].fillna(value=avg, inplace=True)
Le paramètre méthode de la fonction fillna peut être utilisé pour remplir les valeurs manquantes en fonction de la valeur précédente ou suivante dans la colonne (par exemple, method="ffill"). Cela peut être très utile pour les données séquentielles telles que les séries chronologiques.
8. Supprimer les valeurs manquantes
Une autre façon de gérer les valeurs manquantes consiste à les supprimer. Le code suivant supprimera les lignes contenant les valeurs manquantes.
df.dropna(axis=0, how='any', inplace=True)
9. Sélectionnez des lignes en fonction des conditions
Dans certains cas, nous avons besoin d'observations (c'est-à-dire des lignes) qui correspondent à certaines conditions
france_churn = df[(df.Geography == 'France') & (df.Exited == 1)] france_churn.Geography.value_counts()
10 Décrire les conditions avec des requêtes
Les fonctions de requête offrent une méthode de livraison conditionnelle plus flexible. Nous pouvons les décrire à l'aide de chaînes.
df2 = df.query('80000 < Balance < 100000') df2 = df.query('80000 < Balance < 100000' df2 = df.query('80000 < Balance < 100000')
11. Utilisez isin pour décrire la condition
La condition peut avoir plusieurs valeurs. Dans ce cas, il est préférable d'utiliser la méthode isin au lieu d'écrire les valeurs individuellement.
df[df['Tenure'].isin([4,6,9,10])][:3]
12. Fonction Groupby
La fonction Pandas Groupby est une fonction polyvalente et facile à utiliser qui vous aide à obtenir un aperçu de vos données. Cela facilite l’exploration des ensembles de données et révèle les relations sous-jacentes entre les variables.
Nous ferons plusieurs exemples de fonctions de rapport de groupe. Commençons simplement. Le code suivant regroupera les lignes en fonction de la combinaison Géographie, Genre puis donnera le flux moyen de chaque groupe
df[['Geography','Gender','Exited']].groupby(['Geography','Gender']).mean()
13.Groupby combiné avec des fonctions d'agrégation
La fonction agg permet d'appliquer plusieurs fonctions d'agrégation sur le groupe, la liste des les fonctions sont comme le passage de paramètres.
df[['Geography','Gender','Exited']].groupby(['Geography','Gender']).agg(['mean','count'])
14. Appliquer différentes fonctions d'agrégation à différents groupes
df_summary = df[['Geography','Exited','Balance']].groupby('Geography').agg({'Exited':'sum', 'Balance':'mean'}) df_summary.rename(columns={'Exited':'# of churned customers', 'Balance':'Average Balance of Customers'},inplace=True)
De plus, la "fonction NamedAgg" permet de renommer les colonnes de l'agrégat
import pandas as pd df_summary = df[['Geography','Exited','Balance']].groupby('Geography').agg(Number_of_churned_customers = pd.NamedAgg('Exited', 'sum'),Average_balance_of_customers = pd.NamedAgg('Balance', 'mean')) print(df_summary)
15. format de données. Nous pouvons changer cela en réinitialisant l'index.
print(df_summary.reset_index())
16. Réinitialiser et supprimer l'index d'origine
Dans certains cas, nous devons réinitialiser l'index et supprimer l'index d'origine en même temps.
df[['Geography','Exited','Balance']].sample(n=6).reset_index(drop=True)
17. Définir une colonne spécifique comme index
Nous pouvons définir n'importe quelle colonne du dataframe comme index.
df_new.set_index('Geography')
18. Insérez une nouvelle colonne
group = np.random.randint(10, size=6) df_new['Group'] = group
19 où la fonction
Elle est utilisée pour remplacer la valeur dans une ligne ou une colonne en fonction d'une condition. La valeur de remplacement par défaut est NaN, mais nous pouvons également spécifier une valeur de remplacement.
df_new['Balance'] = df_new['Balance'].where(df_new['Group'] >= 6, 0)
20. Fonction de classement
La fonction de classement attribue un classement à une valeur. Créons une colonne qui classe les clients en fonction de leur solde.
df_new['rank'] = df_new['Balance'].rank(method='first', ascending=False).astype('int')
21. Nombre de valeurs uniques dans une colonne
C'est pratique lorsque vous travaillez avec des variables catégorielles. Nous devrons peut-être vérifier le nombre de catégories uniques. Nous pouvons vérifier la taille de la séquence renvoyée par la fonction value count ou utiliser la fonction nunique.
df.Geography.nunique
22. Utilisation de la mémoire
En utilisant la fonction memory_usage, ces valeurs affichent la mémoire en octets.
df.memory_usage()
23.数据类型转换
默认情况下,分类数据与对象数据类型一起存储。但是,它可能会导致不必要的内存使用,尤其是当分类变量具有较低的基数。
低基数意味着列与行数相比几乎没有唯一值。例如,地理列具有 3 个唯一值和 10000 行。
我们可以通过将其数据类型更改为"类别"来节省内存。
df['Geography'] = df['Geography'].astype('category')
24.替换值
替换函数可用于替换数据帧中的值。
df['Geography'].replace({0:'B1',1:'B2'})
25.绘制直方图
pandas 不是一个数据可视化库,但它使得创建基本绘图变得非常简单。
我发现使用 Pandas 创建基本绘图更容易,而不是使用其他数据可视化库。
让我们创建平衡列的直方图。
26.减少浮点数小数点
pandas 可能会为浮点数显示过多的小数点。我们可以轻松地调整它。
df['Balance'].plot(kind='hist', figsize=(10,6), title='Customer Balance')
27.更改显示选项
我们可以更改各种参数的默认显示选项,而不是每次手动调整显示选项。
- get_option:返回当前选项
- set_option:更改选项 让我们将小数点的显示选项更改为 2。
pd.set_option("display.precision", 2)
可能要更改的一些其他选项包括:
- max_colwidth:列中显示的最大字符数
- max_columns:要显示的最大列数
- max_rows:要显示的最大行数
28.通过列计算百分比变化
pct_change用于计算序列中值的变化百分比。在计算时间序列或元素顺序数组中更改的百分比时,它很有用。
ser= pd.Series([2,4,5,6,72,4,6,72]) ser.pct_change()
29.基于字符串的筛选
我们可能需要根据文本数据(如客户名称)筛选观测值(行)。我已经在数据帧中添加了df_new名称。
df_new[df_new.Names.str.startswith('Mi')]
我们可能需要根据文本数据(如客户名称)筛选观测值(行)。我已经在数据帧中添加了df_new名称。
30.设置数据样式
我们可以通过使用返回 Style 对象的 Style 属性来实现此目的,它提供了许多用于格式化和显示数据框的选项。例如,我们可以突出显示最小值或最大值。
它还允许应用自定义样式函数。
df_new.style.highlight_max(axis=0, color='darkgreen')
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!

La flexibilité de Python se reflète dans les systèmes de prise en charge et de type dynamique multi-paradigmes, tandis que la facilité d'utilisation provient d'une syntaxe simple et d'une bibliothèque standard riche. 1. Flexibilité: prend en charge la programmation orientée objet, fonctionnelle et procédurale, et les systèmes de type dynamique améliorent l'efficacité de développement. 2. Facilité d'utilisation: La grammaire est proche du langage naturel, la bibliothèque standard couvre un large éventail de fonctions et simplifie le processus de développement.

Python est très favorisé pour sa simplicité et son pouvoir, adaptés à tous les besoins des débutants aux développeurs avancés. Sa polyvalence se reflète dans: 1) Facile à apprendre et à utiliser, syntaxe simple; 2) Bibliothèques et cadres riches, tels que Numpy, Pandas, etc.; 3) Support multiplateforme, qui peut être exécuté sur une variété de systèmes d'exploitation; 4) Convient aux tâches de script et d'automatisation pour améliorer l'efficacité du travail.

Oui, apprenez Python en deux heures par jour. 1. Élaborer un plan d'étude raisonnable, 2. Sélectionnez les bonnes ressources d'apprentissage, 3. Consolider les connaissances apprises par la pratique. Ces étapes peuvent vous aider à maîtriser Python en peu de temps.

Python convient au développement rapide et au traitement des données, tandis que C convient à des performances élevées et à un contrôle sous-jacent. 1) Python est facile à utiliser, avec syntaxe concise, et convient à la science des données et au développement Web. 2) C a des performances élevées et un contrôle précis, et est souvent utilisé dans les jeux et la programmation système.

Le temps nécessaire pour apprendre le python varie d'une personne à l'autre, principalement influencé par l'expérience de programmation précédente, la motivation d'apprentissage, les ressources et les méthodes d'apprentissage et le rythme d'apprentissage. Fixez des objectifs d'apprentissage réalistes et apprenez mieux à travers des projets pratiques.

Python excelle dans l'automatisation, les scripts et la gestion des tâches. 1) Automatisation: La sauvegarde du fichier est réalisée via des bibliothèques standard telles que le système d'exploitation et la fermeture. 2) Écriture de script: utilisez la bibliothèque PSUTIL pour surveiller les ressources système. 3) Gestion des tâches: utilisez la bibliothèque de planification pour planifier les tâches. La facilité d'utilisation de Python et la prise en charge de la bibliothèque riche en font l'outil préféré dans ces domaines.

Pour maximiser l'efficacité de l'apprentissage de Python dans un temps limité, vous pouvez utiliser les modules DateTime, Time et Schedule de Python. 1. Le module DateTime est utilisé pour enregistrer et planifier le temps d'apprentissage. 2. Le module de temps aide à définir l'étude et le temps de repos. 3. Le module de planification organise automatiquement des tâches d'apprentissage hebdomadaires.

Python excelle dans les jeux et le développement de l'interface graphique. 1) Le développement de jeux utilise Pygame, fournissant des fonctions de dessin, audio et d'autres fonctions, qui conviennent à la création de jeux 2D. 2) Le développement de l'interface graphique peut choisir Tkinter ou Pyqt. Tkinter est simple et facile à utiliser, PYQT a des fonctions riches et convient au développement professionnel.


Outils d'IA chauds

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.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Version crackée d'EditPlus en chinois
Petite taille, coloration syntaxique, ne prend pas en charge la fonction d'invite de code

Version Mac de WebStorm
Outils de développement JavaScript utiles

Navigateur d'examen sécurisé
Safe Exam Browser est un environnement de navigation sécurisé permettant de passer des examens en ligne en toute sécurité. Ce logiciel transforme n'importe quel ordinateur en poste de travail sécurisé. Il contrôle l'accès à n'importe quel utilitaire et empêche les étudiants d'utiliser des ressources non autorisées.

SublimeText3 version anglaise
Recommandé : version Win, prend en charge les invites de code !

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