[PYTHON] Memorandum of Pandas

Einführung

――Ich werde zusammenfassen, wie Pandas, die ich normalerweise verwende, für jeden Zweck als Memorandum verwendet werden.

Memorandum

Serienschleife (Wert + Index)

# Extrahieren Sie Spalten aus dem Datenrahmen und wechseln Sie zu Serien
aaa = df['sts']

# Die erste Zeile wird als "erstes Mal" ausgegeben.
for index, item in enumerate(aaa):
    if index < 1:
 drucken ("erstes Mal")
    else:
 Drucken ("zweite und nachfolgende Zeiten")

Spaltenextraktion aus Datenrahmen

# Definieren Sie die Spalten, die als Array abgerufen werden sollen
use_idx = ['aaa','bbb','ccc']

# Extrahieren Sie die definierten Spalten und erstellen Sie einen neuen Datenrahmen
df2 = df[ use_idx ]

Tagesextraktion

# Konvertieren Sie das Datum in den Datum / Uhrzeit-Typ
data['date'] = pd.to_datetime(date['date'])

# Tag vom Datum extrahieren (SUN = 6, MON = 0)
date['day_of_week'] = date['date'].dt.dayofweek

Liste → Serienkonvertierung

data = [1,8,14,56]
# Benennen Sie die Spalte mit dem optionalen Namen
 s = pd.Series(data, name=['day', 'hour', 'c1', 'c2'])

Extrahieren Sie die Spaltennamen in die Liste

 name = df.columns.values

Spalte löschen

 df = df.drop('AAAA', axis = 1)

Batch-Ersatz von Spaltennamen

# Kombinieren Sie die Zeichenfolge mit dem vorhandenen Spaltennamen
newcol = []
for i in df.columns:
    print(i + "_2day")
    newcol.append(i + "_2day")

# Geben Sie den Spaltennamen erneut an
df.columns = newcol

Datenrahmen sortieren

# Sortierung
dfl = df.sort_values(by="A")  

# Mehrere Sorten
dfl = df.sort_values(by=["A","B","C","D"])  

Datenrahmen concat

# Nach Spalte verbinden
df_union = pd.concat( [df, df2], axis=1 )

# Mit der Linie verbinden
df_union = pd.concat( [df, df2], axis=0 )  
 * Fügen Sie die Option "sort = False" als Gegenmaßnahme gegen das Ändern der Spaltenreihenfolge hinzu.

Datenrahmen zusammenführen

# Innerer Join unter der Bedingung des Schlüssels
df = pd.merge(left, right, on='key')

# Linke äußere Verbindung unter der Bedingung des Schlüssels
df = pd.merge(left, right, on='key', how = 'left')

"""
 Die Kombinationsmethode wird durch das Schlüsselwort how angegeben.
 inner: Standard. Innere Verbindung. Lassen Sie nur die Schlüssel in beiden Daten.
 links: Linke äußere Verbindung. Lassen Sie alle Schlüssel für die ersten Daten.
 rechts: Rechte äußere Verbindung. Lassen Sie alle Schlüssel für die zweiten Daten.
 Outer: Vollständige äußere Verknüpfung. Lassen Sie alle Schlüssel.
"""

Indexeinstellung

# Setzen Sie den Index auf die Spalte xxxx
df.set_index('xxxx')

# Index zurücksetzen
# Die fortlaufende Nummer wird auf index gesetzt und der ursprüngliche Index wird zur Datenspalte hinzugefügt
df.reset_index('xxxx')

# Index zurücksetzen
# Der alte Index wird gelöscht und der neue Index gesetzt
df.reset_index(drop=True)

"""
df2 = df.reset_index(drop=True)
 Beachten Sie, dass reset_index nur angezeigt wird, wenn Sie die obigen Schritte ausführen ()
"""

Kombinieren Sie Datenrahmen und Serien

#Datenrahmen df und Serie df_Kombinieren Sie ser
#Serie ist zu_frame()Mit Datenrahmen konvertieren mit
 df2 = pd.concat( [ df, df_ser.to_frame() ], axis=1 )

Zeitstempel → Datum / Uhrzeit-Konvertierung

to_pydatetime()

Verwenden Sie beim Lesen von CSV eine Zeichenfolge

Liste → Datenrahmenkonvertierung

hoge = pd.DataFrame(hoge)

Nach Daten im Datenrahmen sortieren

#aufsteigende Reihenfolge
hoge = hoge.sort_index() 
#absteigende Reihenfolge
hoge = hoge.sort_index(ascending=False) 

Fügen Sie Parameter mit read_sql hinzu (mit Platzhaltern)

#Ein Parameter
sql "select * from aaa where opstime >= %s;"
df = pd.read_sql(sql, con=conn, params=("2020-02-13"))

#Zwei Parameter
sql "select * from aaa where opstime >= %s and opstime <= %s;"
df = pd.read_sql(sql, con=conn, params=("2020-02-13","2020-02-15"))

Erstellen Sie einen leeren Datenrahmen

#Erstellen Sie einen Datenrahmen mit 3 Zeilen und 3 Spalten und dem Wert NULL
df = pd.DataFrame(index=range(3), columns=['a', 'b' , 'c'])

Recommended Posts

Memorandum of Pandas
Pandas Memorandum
Pandas Operations Memorandum
Pandas
Memorandum (Pseudo-Vlookup von Pandas)
Memorandum @ Python ODER Seminar: Pandas
Matplotlib Memorandum
Pandas Memo
jinja2 Memorandum
Entwicklungsmemorandum ~ Pandas, Prognose, Datenstruktur ~
Python-Memorandum
Django Memorandum
Befehlsmemorandum
Python-Memorandum 2
Plotly Memorandum
Slackbot-Memorandum (1)
Pandas Grundlagen
Multiprocessing Memorandum
Memorandum MetaTrader5
Pandas Notizen
ShellScript-Memorandum
Python-Memorandum
Pydoc Memorandum
Python Memorandum
Python Memorandum
DjangoGirls Memorandum
Pandas Grundlagen
Befehlsmemorandum
Python-Memorandum
Pandas Memo
Python Memorandum
Python-Memorandum
pandas SettingWithCopyWarning
Pandas Selbststudium Memo
Python-Grundmemorandum
Memorandum vom RAID-Typ
Meine Pandas (Python)
Python Pathlib Memorandum
Rucksack Problem Memorandum
Pandas-Übung (Bearbeiten)
Excel-> Pandas-> SQLite
nc Befehl Memorandum
Deep Learning Memorandum
[Pandas] GroupBy-Tipps
Über beschreiben Pandas
Pandas verwandte Links
Pandas mit fehlendem Wert
9rep - Pandas MySQL
numpy memorandum 1 / np.pad
Memorandum Conda Befehl
setuptools Befehl Memorandum
Python-Memorandum [Links]
tslearn Trial Memorandum
Nach Pandas sortieren
Djangos grundlegendes Memorandum
Memorandum über die Validierung
Python Pandas Memo
Pandas Serie Teil 1
[Anmerkung] Pandas entstapeln