install
#install
pip install pandas
Series
#Créé avec aléatoire
arr = np.random.randn(6)
s1 = pd.Series(arr)
#Créé avec arange
arr2 = np.arange(6)
s2 = pd.Series(arr2)
#Créé avec ceux
arr3 = np.ones(6)
s3 = pd.Series(arr3)
#Créé avec des zéros
arr4 = np.zeros(6)
s4 = pd.Series(arr4)
#spécification d'index
arr = np.random.randn(6)
s5 = pd.Series(arr, index=["janvier", "février", "Mars", "avril", "Mai", "juin"])
#* Il est normal de dupliquer des index
#Créé avec un dictionnaire
dict_data = {"janvier": 11, "février": 13, "Mars": 10, "avril": 14, "Mai": 8, "juin": 10}
s6 = pd.Series(dict_data)
###############################################
#Obtenez des données avec index
s6[0]
#Obtenez des données avec clé
s3["janvier"]
DataFrame
import pandas as pd
import numpy as np
#Créé avec numpy
arr = np.random.randn(20).reshape((4, 5))
df = pd.DataFrame(arr)
#Spécification d'index de ligne et de colonne
index = ["Q1", "Q2", "Q3", "Q4"]
columns = ["A", "B", "C", "D", "E"]
df = pd.DataFrame(arr, index=index, columns=columns)
###################################################
#Comment utiliser
#Obtenir la ligne
df.index
#Obtenir la colonne
df.columns
#L'acquisition des données
df.values
#obtenir décrire
df.describe()
#count Nombre de données
#unique Nombre de valeurs uniques (uniques)
#top Valeur apparaissant le plus fréquemment (valeur la plus fréquente)
#nombre d'occurrences de la valeur la plus fréquente de fréquence
#valeur moyenne moyenne
#écart-type std
#valeur minimale min
#25% 1/4 minutes
#50%Médian
#75% 3/4 minutes
#valeur maximale maximale
#sort
#tri par index
df.sort_index(axis=0, ascending=False)
#※axis:Ligne 0,1 colonne ascendante: véritable ordre croissant,faux ordre décroissant
#Descendant dans la ligne A
df.sort_values(axis=0, by="A", ascending=False)
#Ordre croissant dans la ligne Q3
df.sort_values(axis=1, by="Q3", ascending=True)
##############################################
#L'acquisition des données
#Obtenir des données de ligne
df.loc["Q3"]
df.loc["Q1":"Q3"]
df.iloc[0]
df.iloc[0:3]
#Acquisition de données de colonne
df.loc[:,"B"]
df.loc["Q2","A":"C"]
df.iloc[:, 0]
df.iloc[0:2, 0:3]
#Acquisition de données matricielles
df.ix["Q0":"Q2", 1:3]
############################################
#Vérifier les données vides
df.isnull()
#Supprimer la matrice de données vide
df.dropna(axis=0, how="any")
#※axis:0 lignes 1 colonnes comment:"any"Supprimer s'il y a,"all"Supprimer tout nan
#Définir les données vides sur 1
df.fillna(value=1)
#############################################
#Jointure de données
#méthode concat
pd.concat([df1, df2, df3,...],
axis=0 or 1,
ignore_index=True,
join="outer" or "inner",
join_axes=[data1.index])
# df1 :DataFrame
#axe: direction de jointure
# ignore_index: index de tri(default:False)
#jointure: ensemble de somme interne externe Naokazu
# join_axes: joindre des données de référence
index1 = pd.date_range("2018-10-01", periods=4)
df1 = pd.DataFrame(np.arange(20).reshape((4, 5)), index=index1, columns=list("ABCDE"))
index2 = pd.date_range("2018-10-03", periods=3)
df2 = pd.DataFrame(np.arange(12).reshape((3, 4)), index=index2, columns=list("DEFG"))
# axis=0 Combiner verticalement
result = pd.concat([df1, df2], axis=0, sort=True)
# axis=1 Connectez horizontalement
result2 = pd.concat([df1, df2], axis=1)
# axis=0, join_axes=[df1.columns]
result6 = pd.concat([df1, df2], axis=0, join_axes=[df1.columns], sort=False)
# axis=1, join_axes=[df1.index]
result7 = pd.concat([df1, df2], axis=1, join_axes=[df1.index], sort=False)
#df1.append()méthode
df1.append([df2, df2, df3,...],
axis=0 or 1,
ignore_index=True)
result8 = df1.append(df2, ignore_index=True, sort=False)
#pd.merge()méthode
pd.merge(left, right,
on=["key1", "key2"],
how="inner" or "outer" or "left" or"right"
indicator="Explication")
left = pd.DataFrame({
"key": ["A0", "A1", "A2", "A3"],
"B": ["B0", "B1", "B2", "B3"],
"C": ["C0", "C1", "C2", "C3"],
})
right = pd.DataFrame({
"key": ["A0", "A1", "A2", "A3"],
"D": ["B1", "B2", "B2", "B4"],
"E": ["C2", "C1", "C5", "C2"]
})
# "key"Combiner avec
result9 = pd.merge(left, right, on="key")
result10 = pd.merge(left, right, on=["key", "B"])
result11 = pd.merge(left, right, on=["key", "B"])
result12 = pd.merge(left, right, on=["key", "B"], how="left")
result11 = pd.merge(left, right, on=["key", "B"], how="right")
#how =gauche: combiner tout ce qui reste
################################################
#Sortie de données
left = pd.DataFrame({
"key": ["A0", "A1", "A2", "A3"],
"B": ["B0", "B1", "B2", "B3"],
"C": ["C0", "C1", "C2", "C3"],
})
# csv
left.to_csv("left_data.csv")
# json
left.to_json("left.json")
#autres
#to_json,to_excel,to_csv,to_clipboard,
#to_dense,to_dict,to_feather,to_gbq,
#to_hdf,to_html,to_latex,to_msgpack,
#to_panel,to_parquet,to_pickle,to_records
#to_sparse,to_sql,to_stata
#########################################
#Graphique
import matplotlib.pyplot as plt
s = pd.Series(np.random.randn(1000))
result = s.cumsum()
result.plot()
plt.show()
Recommended Posts