【Pythonデータサイエンス超入門1-2】Pandasによるデータ操作の基本【YouTube】
YouTubeによるPythonデータサイエンス超入門シリーズ「Pandasの基本」で紹介したソースコードを掲載しているページです。
ご自由に動画で使用したCSVのダウンロードやソースコードのコピー&ペーストなどしてご活用ください。
YouTubeチャンネル
動画リンク
CSVのダウンロード
enquete_sample.csv
personNo_1.csv
personNo_1B.csv
personNo_2.csv
sectionNo.csv
ソースコード
第一章:データの確認
CSVの読み込み
1 |
df_enq = pd.read_csv("enquete_sample.csv",index_col="回答者No.") |
一部の行/列の抽出
1 |
df_enq[5:10][["性別","年代","満足度","世帯人数"]] |
条件による行の抽出(フィルター)
1 |
df_enq[(df_enq["年収"] >= 500) & (df_enq["年代"] == "50代")] |
データの並び替え(ソート)
1 |
df_enq.sort_values(["年代","年収"],ascending=False) |
CSVへの書き出し
1 2 |
df_enq_tmp = df_enq[df_enq["年代"] == "40代"].sort_values("年収") df_enq_tmp.to_csv("結果.csv") |
第二章:データの集計
データの集計
1 |
df_enq.median(numeric_only=True) |
条件ごとのデータの集計
1 |
df_enq.groupby(["性別","年代"]).sum() |
第三章:データの整形
重複行処理
1 |
df_enq[df_enq.duplicated(keep=False)] |
欠損値処理
1 2 |
df_enq.drop_duplicates(subset=["性別","年代"]) df_enq.fillna({"年代":"不明","年収":df_enq.median()["年収"]}) |
形状変換
1 2 |
df_enq.melt() df_enq.T |
第四章:データの結合
joinによる結合
1 2 3 4 |
df_person1 = pd.read_csv("personNo_1.csv",index_col="社員番号") df_person2 = pd.read_csv("personNo_2.csv",index_col="社員番号") df_person = df_person1.join(df_person2) |
mergeによる結合
1 2 |
df_section = pd.read_csv("sectionNo.csv",index_col="組織番号") pd.merge(df_person,df_section,on=["組織番号","組織名"]) |
concatによる結合
1 2 |
df_person1B = pd.read_csv("personNo_1B.csv",index_col="社員番号") pd.concat([df_person1,df_person1B]) |