[PYTHON] Mémorandum de Pandas

introduction

«Je vais résumer comment utiliser Pandas, que j'utilise habituellement, pour chaque objectif comme mon mémorandum.

mémorandum

boucle de série (valeur + index)

# Extraire les colonnes du dataframe et passer à la série
aaa = df['sts']

# La première ligne est sortie comme "première fois"
for index, item in enumerate(aaa):
    if index < 1:
 print ("première fois")
    else:
 print ("seconde fois et suivantes")

Extraction de colonnes à partir de dataframe

# Définir les colonnes à récupérer sous forme de tableau
use_idx = ['aaa','bbb','ccc']

# Extraire les colonnes définies et créer un nouveau dataframe
df2 = df[ use_idx ]

Extraction de jour

# Convertir la date en type datetime
data['date'] = pd.to_datetime(date['date'])

# Extraire le jour de la date (SUN = 6, MON = 0)
date['day_of_week'] = date['date'].dt.dayofweek

liste → conversion en série

data = [1,8,14,56]
# Nommez la colonne avec le nom facultatif
 s = pd.Series(data, name=['day', 'hour', 'c1', 'c2'])

Extraire les noms de colonnes pour les lister

 name = df.columns.values

Supprimer la colonne

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

Remplacement par lots des noms de colonnes

# Combiner la chaîne avec le nom de colonne existant
newcol = []
for i in df.columns:
    print(i + "_2day")
    newcol.append(i + "_2day")

# Respécifier le nom de la colonne
df.columns = newcol

Tri du dataframe

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

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

dataframe concat

# Rejoindre par colonne
df_union = pd.concat( [df, df2], axis=1 )

# Rejoindre en ligne
df_union = pd.concat( [df, df2], axis=0 )  
 * Ajoutez l'option "sort = False" comme contre-mesure contre la modification de l'ordre des colonnes.

fusionner le dataframe

# Jointure intérieure sous condition de clé
df = pd.merge(left, right, on='key')

# Jointure externe gauche sous condition de clé
df = pd.merge(left, right, on='key', how = 'left')

"""
 La méthode de combinaison est spécifiée par le mot clé how.
 interne: par défaut. Jointure interne. Ne laissez que les clés contenues dans les deux données.
 gauche: jointure externe gauche. Laissez toutes les clés pour les premières données.
 droite: jointure externe droite. Laissez toutes les clés pour les secondes données.
 externe: jointure externe complète. Laissez toutes les clés.
"""

réglage de l'index

# Définir l'index sur la colonne xxxx
df.set_index('xxxx')

# Réinitialiser l'index
# Le numéro séquentiel est défini sur index et l'index d'origine est ajouté à la colonne de données
df.reset_index('xxxx')

# Réinitialiser l'index
# L'ancien index est supprimé et le nouvel index est défini
df.reset_index(drop=True)

"""
df2 = df.reset_index(drop=True)
 Notez que reset_index ne sera pas reflété sauf si vous faites ce qui précède ()
"""

Combinez la trame de données et la série

#dataframe df et série df_Combiner ser
#série est de_frame()Convertir en dataframe en utilisant
 df2 = pd.concat( [ df, df_ser.to_frame() ], axis=1 )

horodatage → conversion datetime

to_pydatetime()

Lors de la lecture de csv, utilisez une chaîne de caractères

liste → conversion de dataframe

hoge = pd.DataFrame(hoge)

Trier par index dans le dataframe

#ordre croissant
hoge = hoge.sort_index() 
#Ordre décroissant
hoge = hoge.sort_index(ascending=False) 

Ajouter des paramètres avec read_sql (en utilisant des caractères génériques)

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

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

Créer un bloc de données vide

#Créer un bloc de données avec 3 lignes et 3 colonnes et une valeur NULL
df = pd.DataFrame(index=range(3), columns=['a', 'b' , 'c'])

Recommended Posts

Mémorandum de Pandas
mémorandum pandas
Mémorandum d'opération Pandas
Pandas
Mémorandum (pseudo Vlookup par pandas)
Mémorandum @ Python OU Séminaire: Pandas
Mémorandum Matplotlib
Mémo Pandas
mémorandum jinja2
Mémorandum de développement ~ pandas, prévisions, structure de données ~
Mémorandum Python
Mémorandum Django
Mémorandum de commandement
Mémorandum Python 2
mémorandum complot
Mémorandum Slackbot (1)
Notions de base sur les pandas
mémorandum de multitraitement
Mémorandum MetaTrader5
Notes de pandas
Mémorandum ShellScript
Mémorandum Python
mémorandum pydoc
mémorandum python
mémorandum python
Mémorandum DjangoGirls
Notions de base sur les pandas
Mémorandum de commandement
Mémorandum Python
mémo pandas
mémorandum python
Mémorandum Python
pandas SettingWithCopyWarning
mémo d'auto-apprentissage pandas
Mémorandum de base Python
Mémorandum de type RAID
Mes pandas (Python)
Mémorandum de Python Pathlib
Mémorandum de problème de sac à dos
Exercice Pandas (édition)
Excel-> pandas-> sqlite
mémorandum de commande nc
Mémorandum d'apprentissage profond
[pandas] Conseils GroupBy
À propos de décrire les pandas
liens relatifs aux pandas
Pandas de valeur manquante
9rep - Pandas MySQL
mémorandum numpy 1 / np.pad
Commande mémorandum conda
Mémorandum de commande setuptools
Mémorandum Python [liens]
Mémorandum de procès tslearn
Trier par pandas
Mémorandum de base de Django
Mémorandum sur la validation
mémo pandas python
série pandas partie 1
[Note] les pandas se désempilent