[Python] Hinweise zur Datenanalyse

Zweck dieses Artikels

Eine vollständige persönliche Notiz bei der Datenanalyse. Ich habe keine kurzen Dinge wie `df.head ()` eingefügt, weil ich es so gemacht habe, dass ich es kopieren kann.

Bibliothekslast

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')

Daten gelesen

Muster 1

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

Muster 2

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

Datenexport

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

Datenrahmen bearbeiten

Spalte umbenennen

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

Änderung des Spaltendatentyps

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

Einfaches Zusammenfügen von Datenrahmen

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']})

#Neuzuordnung des Index(Wird als Set mit ungefähr verwendet)
df.reset_index(drop=True, inplace=True)

Export nach CSV

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

Andere

Zusammenfassung wie grundlegende Statistiken

!pip install pandas-profiling
import pandas_profiling as pdp

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

Tun Sie dies zuerst, nachdem Sie die Daten gelesen haben.

Mengenzählung

import collections

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

Fortschrittsanzeige

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

#Einschlussausdruck
[foo for i in tqdm(range(n))]

Berechnungszeit messen

%%timeit

foo bar

Müllabfuhr

import gc

gc.collect()

Häufig verwendete Vorlage

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] Hinweise zur Datenanalyse
Lernnotizen zur Python-Datenanalyse
Datenanalyse Python
Datenanalyse mit Python 2
Datenanalyse Übersicht Python
Python-Datenanalysevorlage
Datenanalyse mit Python
Mein Python-Datenanalyse-Container
Python für die Datenanalyse Kapitel 4
Hinweise zur Installation von Python auf Ihrem Mac
Python für die Datenanalyse Kapitel 2
Datenanalyse mit Python-Pandas
Hinweise zur Installation von Python unter CentOS
Tipps und Vorsichtsmaßnahmen bei der Datenanalyse
Python für die Datenanalyse Kapitel 3
Hinweise zu Python- und Wörterbuchtypen
Python: Zeitreihenanalyse: Vorverarbeitung von Zeitreihendaten
Hinweise zur Verwendung von MeCab aus Python
Persönliche Notizen zur Vorverarbeitung von Python Pandas-Daten
Hinweise zur Installation von Python mit PyEnv
Vorverarbeitungsvorlage für die Datenanalyse (Python)
Hinweise zur Verwendung von rstrip mit Python.
Hinweise zum Zugriff auf dashDB über Python
Datenanalyse beginnend mit Python (Datenvisualisierung 1)
Datenanalyse beginnend mit Python (Datenvisualisierung 2)
Erstellen Sie eine Python-Datenanalyseumgebung auf einem Mac (El Capitan).
Hinweise zur Verwendung von OpenCV mit Windows 10 Python 3.8.3.
Python-Scraping-Memo
Python lernen note_000
Python-Lernnotizen
Hinweise zur Python-Grammatik für maschinelles Lernen in PyQ
Python-Visualisierungstool für die Datenanalyse
Datenanalyse Titanic 2
Python unter Windows
Twitter mit Python3
Anmerkung von nfc.ContactlessFrontend () von nfcpy von Python
Python lernen note_006
Hinweise zur Flasche
Hinweise zur japanischen OCR mit Python
Hinweise zum Erstellen von Python und Pyenv auf dem Mac
Datenanalyse Titanic 1
Python C ++ Notizen
[Python] Erste Datenanalyse / maschinelles Lernen (Kaggle)
Python auf Mac
Python lernen note_005
Python-Grammatiknotizen
Python Library Hinweis
Datenanalyse beginnend mit Python (Datenvorverarbeitung - maschinelles Lernen)
Datenanalyse Titanic 3
Python auf Windbg
Python persönliche Notizen
Ich habe ein Python-Datenanalysetraining aus der Ferne durchgeführt
Datenanalyseumgebung mit Schwerpunkt auf Datalab (+ GCP)
Vorbereitung auf die von Python 3 Engineer zertifizierte Datenanalyseprüfung
Python Pandas Memo
Python lernen note_001
Python-Lernnotizen
Installationshinweise zu Python3.4
[Python] Daten lesen
[Python] 100 Schläge auf Data Science (strukturierte Datenverarbeitung) 018 Erläuterung