[Python] Notes sur l'analyse des données

Objectif de cet article

Une note personnelle complète lors de l'analyse des données. Je n'ai pas mis des choses courtes comme `` df.head () '' parce que je l'ai fait pour que je puisse le copier.

Charge de la bibliothèque

import numpy as np
import pandas as pd
pd.set_option('display.max_columns', 100)

import seaborn as sns
import matplotlib.pyplot as plt
import japanize_matplotlib

import os
from tqdm import tqdm
import warnings
warnings.filterwarnings('ignore')

Lecture des données

modèle 1

filename = "hoge.csv"
df = pd.read_csv(filename, encoding='utf-8')

Motif 2

dirname = "/foo/bar/.../"
filename = "hoge.csv"
filepath = os.path.join(dirname, filename)
df = pd.read_csv(filepath, encoding='utf-8')

Export de données

filename = "huga.csv"
df.to_csv(filename, header=True, index=False)

Manipulation des trames de données

Renommer la colonne

df = df.rename(columns={"before01":"after01", "before02":"after02"})

Changement de type de données de colonne

df = df.astype({"col": "category"})

Jointure simple de trames de données

df = pd.concat([upper,lower])

df = pd.concat([left,right], axis=1)

LEFT JOIN

df = pd.merge(left, right, on="key", how='left')

df = pd.merge(left, right, left_on="lkey", right_on="rkey", how='left')

df = pd.merge(left, right, left_on=["lkey01", "lkey02"], right_on=["rkey01", "rkey02"], how='left')

GROUP BY

df = df.groupby(by="col01", as_index=False).sum()

df = df.groupby(by=["col01", "col02"], as_index=False).agg({"col01": ['mean', 'count'], "col02":['std', 'var']})

#Réaffectation d'index(Utilisé comme un ensemble avec environ)
df.reset_index(drop=True, inplace=True)

Exporter vers csv

filename = "hoge.csv"
df.to_csv(filename, header=True, index=False)

Autre

Résumé comme les statistiques de base

!pip install pandas-profiling
import pandas_profiling as pdp

profile = pdp.ProfileReport(df)
profile.to_file(outputfile="myoutputfile.html")

Après avoir lu les données, faites-le d'abord.

Comptage de quantité

import collections

lis = ["Alice", "Alice", "Bob", "Bob", "Bob", "Carol"]
c = collections.Counter(lis)
c.most_common(3)

barre de progression

for i tqdm(range(n)):
    foo bar

#Expression d'inclusion
[foo for i in tqdm(range(n))]

Mesurer le temps de calcul

%%timeit

foo bar

Collecte des ordures

import gc

gc.collect()

Modèle fréquemment utilisé

list01 = []
list02 = []

for i tqdm(range(n)):
  v01 = ???
  list01.append(v01)
  v02 = ???
  list02.append(v02)

df = pd.DataFrame({"col01":list01, "col02":list02})

Recommended Posts

[Python] Notes sur l'analyse des données
Notes d'apprentissage sur l'analyse des données Python
Analyse de données python
Analyse de données avec python 2
Présentation de l'analyse de données python
Modèle d'analyse de données Python
Analyse de données avec Python
Mon conteneur d'analyse de données python
Python pour l'analyse des données Chapitre 4
Remarques sur l'installation de Python sur votre Mac
Python pour l'analyse des données Chapitre 2
Analyse de données à l'aide de pandas python
Remarques sur l'installation de Python sur CentOS
Conseils et précautions lors de l'analyse des données
Python pour l'analyse des données Chapitre 3
Notes sur Python et les types de dictionnaire
Python: analyse des séries chronologiques: prétraitement des données des séries chronologiques
Remarques sur l'utilisation de MeCab depuis Python
Notes personnelles de prétraitement des données Python Pandas
Remarques sur l'installation de Python à l'aide de PyEnv
Modèle de prétraitement pour l'analyse des données (Python)
Notes sur l'utilisation de rstrip avec python.
Remarques sur l'accès à dashDB à partir de python
Analyse de données à partir de python (visualisation de données 1)
Analyse de données à partir de python (visualisation de données 2)
Créer un environnement d'analyse de données python sur Mac (El Capitan)
Remarques sur l'utilisation d'OpenCV avec Windows10 Python 3.8.3.
Mémo de raclage Python
Note d'apprentissage Python_000
Notes d'apprentissage Python
Remarques sur la grammaire Python de l'apprentissage automatique PyQ
Outil de visualisation Python pour le travail d'analyse de données
Analyse des données Titanic 2
Python sur Windows
twitter avec python3
Note de nfc.ContactlessFrontend () de nfcpy de python
Note d'apprentissage Python_006
Notes sur Flask
Remarques sur la réalisation de l'OCR japonais avec Python
Remarques sur la construction de Python et pyenv sur Mac
Analyse des données Titanic 1
notes de python C ++
[Python] Première analyse de données / apprentissage automatique (Kaggle)
python sur mac
Note d'apprentissage Python_005
Notes de grammaire Python
Note sur la bibliothèque Python
Analyse de données à partir de python (pré-traitement des données-apprentissage automatique)
Analyse des données Titanic 3
Python sur Windbg
notes personnelles python
J'ai suivi une formation à l'analyse de données Python à distance
Environnement d'analyse de données centré sur Datalab (+ GCP)
Préparation à l'examen d'analyse de données certifié Python 3 Engineer
mémo pandas python
Note d'apprentissage Python_001
notes d'apprentissage python
Notes d'installation de Python3.4
[python] Lecture de données
[Python] 100 coups sur la science des données (traitement de données structurées) 018 Explication