Le pouvoir des pandas: Python

pandas.jpeg

Pandas Basics### Pandas is a Python package providing fast, flexible, and expressive data structures designed to make working with “relational” or “labeled” data both easy and intuitive. It aims to be the fundamental high-level building block for doing practical, real world data analysis in Python. Additionally, it has the broader goal of becoming the most powerful and flexible open source data analysis / manipulation tool available in any language. It is already well on its way toward this goal.

Pandas is a high-level data manipulation tool developed by Wes McKinney. It is built on the Numpy package and its key data structure is called the DataFrame. DataFrames allow you to store and manipulate tabular data in rows of observations and columns of variables.

pandas.png

pandas is well suited for many different kinds of data: -Données tabulaires avec des colonnes de typage hétérogène, comme dans une table SQL ou une feuille de calcul Excel -Données chronologiques ordonnées et non ordonnées (pas nécessairement à fréquence fixe). ・ Données matricielles arbitraires (typées de manière homogène ou hétérogènes) avec des étiquettes de ligne et de colonne ・ Toute autre forme d'ensembles de données d'observation / statistiques. Les données n'ont en fait pas besoin d'être étiquetées du tout pour être placées dans une structure de données pandas

Here are just a few of the things that pandas does well: ・ Gestion aisée des données manquantes (représentées par NaN) en virgule flottante ainsi que des données en virgule non flottante -Mutabilité de la taille: les colonnes peuvent être insérées et supprimées de DataFrame et d'objets de dimensions supérieures -Alignement automatique et explicite des données: les objets peuvent être explicitement alignés sur un ensemble d'étiquettes, ou l'utilisateur peut simplement ignorer les étiquettes et laisser Series, DataFrame, etc. Aligner automatiquement les données pour vous dans les calculs ・ Groupe par fonctionnalité puissant et flexible pour effectuer des opérations fractionnées-appliquer-combiner sur des ensembles de données, à la fois pour l'agrégation et la transformation des données ・ Facilitez la conversion de données irrégulières et indexées différemment dans d'autres structures de données Python et NumPy en objets DataFrame ・ Tranchage intelligent basé sur les étiquettes, indexation sophistiquée et sous-ensemble de grands ensembles de données ・ Fusion et jonction intuitives d'ensembles de données ・ Remodelage et pivotement flexibles des ensembles de données ・ Étiquetage hiérarchique des axes (possible d'avoir plusieurs étiquettes par tick) ・ Outils E / S robustes pour charger des données à partir de fichiers plats (CSV et délimités), de fichiers Excel, de bases de données et de sauvegarde / chargement de données à partir du format ultra-rapide HDF5 -Fonctionnalité spécifique à la série de temps: génération de plage de dates et conversion de fréquence, statistiques de fenêtre mobile, décalage et décalage de date.

2020-09-25 18_49_13-pandas-data-structure.svg.png

To load the pandas package and start working with it, import the package.

In [1]: import pandas as pd

■Creating data The two primary data structures of pandas, Series (1-dimensional) and DataFrame (2-dimensional).Each column in a DataFrame is a Series.

** · Trame de données ** A DataFrame is a table. It contains an array of individual entries, each of which has a certain value. Each entry corresponds to a row (or record) and a column. For example, consider the following simple DataFrame:

In [2]: pd.DataFrame({'Yes': [50, 21], 'No': [131, 2]})

Out [2]:

Yes No
0 50 131
1 21 2

2020-09-25 17_35_21-What kind of data does pandas handle_ — pandas 1.1.2 documentation.png

DataFrame entries are not limited to integers. For instance, here's a DataFrame whose values are strings:

In [3]: pd.DataFrame({'Bob': ['I liked it.', 'It was awful.'], 'Sue': ['Pretty good.', 'Bland.']})

Out [3]:

Bob Sue
0 I liked it. Pretty good.
1 It was awful. Bland.

There are several ways to create a DataFrame. One way is to use a dictionary. For example: 2020-09-25 17_25_46-Pandas Basics - Learn Python - Free Interactive Python Tutorial.png

** · Séries ** A Series, by contrast, is a sequence of data values. If a DataFrame is a table, a Series is a list. And in fact you can create one with nothing more than a list:

create-series-in-python-pandas-0.png

In [4]: pd.Series([1, 2, 3, 4, 5])
Out [4]: 
0    1
1    2
2    3
3    4
4    5
dtype: int64

■Reading data files Another way to create a DataFrame is by importing a csv file using Pandas. Data can be stored in any of a number of different forms and formats. By far the most basic of these is the humble CSV file. Now, the csv cars.csv is stored and can be imported using pd.read_csv: 2020-09-25 17_26_56-Pandas Basics - Learn Python - Free Interactive Python Tutorial.png

or we can examine the contents of the resultant DataFrame using the head() command, which grabs the first five rows:

In [5]: pd.head()

■ Other Useful Tricks ** ・ Obtenez le répertoire de travail actuel **

In [6]: import os
In [7]: os.getcwd()

** ・ Vérifiez le nombre de lignes et de colonnes présentes dans les données ** (o/p -> no. of rows, no. of columns)

In [8]: pd.shape
Out [8]: (2200, 15)

** ・ Renommez les colonnes **

In [9]: pd_new = pd.rename(colums = {'Amount.Requested': 'Amount.Requested_NEW'})  
In [10]: pd_new.head()

** ・ Ecrire un dataframe en csv ou excel **

df.to_csv("filename.csv", index = False)
df.to_excel("filename.xlsx", index = False)

There are two ways to handle the situation where we do not want the index to be stored in csv file.

  1. you can use index=False while saving your dataframe to csv file.
df.to_csv("file_name.csv", index=False)

2 . Or you can save your dataframe as it is with an index, and while reading you just drop the column unnamed 0 containing your previous index.

df.to_csv("file_name.csv")
df_new = pd.read_csv("file_name.csv").drop(['unnamed 0'],axis=1)

here is the cheat-sheet for pandas. https://pandas.pydata.org/Pandas_Cheat_Sheet.pdf

Enjoy the Power of Pandas and I hope you found it helpful. Thank you for spending the time to read this article. See you in next topic. :grinning: :grinning:

Recommended Posts

Le pouvoir des pandas: Python
le zen de Python
Pandas du débutant, par le débutant, pour le débutant [Python]
Vers la retraite de Python2
À propos des fonctionnalités de Python
L'histoire de Python et l'histoire de NaN
[Python] Mémo d'opération de pandas DataFrame
[Python] La pierre d'achoppement de l'importation
First Python 3 ~ Le début de la répétition ~
Existence du point de vue de Python
pyenv-changer la version python de virtualenv
La puissance des solveurs d'optimisation combinée
[Python] Comprendre le potentiel_field_planning de Python Robotics
Apprenez les bases de Python ① Débutants élémentaires
[Python] Résumé de l'utilisation des pandas
Changer la longueur des chaînes csv Python
Vérifiez le comportement du destroyer en Python
Mes pandas (Python)
[Python3] Comprendre les bases de Beautiful Soup
Notes d'apprentissage depuis le début de Python 1
Vérifier l'existence du fichier avec python
À propos de l'environnement virtuel de Python version 3.7
[Python3] Réécrire l'objet code de la fonction
Je ne connaissais pas les bases de Python
Les bases de Python ①
Le résultat de l'installation de python sur Anaconda
Bases de python ①
Vérifiez le chemin du module importé Python
L'histoire de la manipulation des variables globales Python
Copie de python
[python] [meta] Le type de python est-il un type?
Le modèle de projet Python auquel je pense.
À la recherche du FizzBuzz le plus rapide en Python
Cours de base Python (à la fin de 15)
Définissez le nom du processus du programme Python
[Python] Récupère le code de caractère du fichier
L'histoire du traitement A du blackjack (python)
Apprenez intuitivement la refonte de Python np
Note Python: le rôle secret de Kamma
Notes d'apprentissage depuis le début de Python 2
mémo pandas python
Introduction de Python
Traduction japonaise: PEP 20 - Le Zen de Python
[Python3] Comprendre les bases des opérations sur les fichiers
Récupérer le contenu de git diff depuis python
Sortie du nombre de cœurs de processeur en Python
J'ai essayé la fonction de tableau croisé dynamique des pandas
Essai du parseur d'emacs-org orgparse pour python
[python] Vérifier les éléments de la liste tous, tous
[Python] Trier la liste de pathlib.Path dans l'ordre naturel
Préparer l'environnement d'exécution de Python3 avec Docker
Fonctionnement automatique de Chrome avec Python + Sélénium + pandas
Résumé des différences entre PHP et Python
Le contenu du didacticiel Python (chapitre 5) est résumé dans une puce.
Le contenu du didacticiel Python (chapitre 4) est résumé dans une puce.
Le contenu du didacticiel Python (chapitre 2) est résumé dans une puce.