データ分析の勉強を進めるにあたってのメモです.
随時加筆します. qiitaの記法の練習も兼ねてます. 簡略してかいてます.
.sum()のところは様々な関数が入ります.
#初日
データの結合
-
縦結合(行方向に増やす)
- データ件数は増える
- つまり項目は増えない
pd.concat([データ1, データ2], ignore_index="True")
-
横方向(列方向に増やす)
- データの項目を増やす
- 項目が二重にならないようにする
-
pd.merge(データ1, データ2["列",..., "列"], on="列", how="left")
- on="共通するデータ列"
- how="left/right", どの方向から結合するか, 基本左?
###統計量表示
.describe()
で統計量表示
###データ確認
.dtypes
でデータ確認
###集計
.groupby("集計したい列").sum()["表示させたい列"]
で集計
###表作成
pd.pivot_table(データ, index="列", columns="列", values="列", aggfunc="sum")
で表作成
###プロット
plt.plot(横軸, 縦軸, label="ラベル名")
-
import matplotlib.pyplot as plt
のもと - 横軸は
list
型にして渡す
見にくい→ちょっとみやすくした
#2日目
###ソートして表示
.sort_values(by="列", ascending=True)
- Trueで降順, falseで昇順
###任意の要素(複数)を参照
データ名.loc["条件が付与された行", "表示したい列"]
- ex)
.isnull()
などをして欠損値があった行(=True)における列を参照 -
list()
すると表示したい列の配列になっている
###重複を無視
.unique()
###型変換
.astype("変換したい型")
- 重複を無視した要素の配列が返ってくる
###数値→日付に変換
pd.to_timedelta("float型の数値", unit="D")
datetime型になる
###列の削除
.drop("列名", axis=1)
###その他
-
pd.pivot_table("データ名", index="列", ...)
とデータ名.pivot_table(index="列", ...)
はどちらでも良い -
.isnull()
は欠損値の有無を確認→True か False
が出力
#3日目
###その他
-
.isna()
=.isnull()
-
.where()
で フラグをつくる
#4日目
特になし, どのデータが必要かまだわかっていない
#5,6日目
特になし, 5章までの内容が基本的な部分.
資料
秀和システム社の 「Python 実践データ分析 100本ノック」で勉強してます.