Pandasでデータフレームをcsvファイルに書き込む|Python

1 アクセス

はじめに

この記事は、Pandasで条件を満たす行を抽出する|Pythonの続きです

今回は、もとのデータから不要な列を削除して新しくcsvファイルにする

この記事は、以下の著作物を改変して利用しています。
あいちの人口(2024年9月1日現在) 愛知県人口動向調査結果 月報、愛知県、クリエイティブ・コモンズ・ライセンス
表示2.1日本(http://creativecommons.org/licenses/by/2.1/jp/

データの抽出

複数条件で行を抽出する

1つの条件で行を抽出する方法は前回行ったが、複数の条件で抽出したいときは、&(論理積ANDのとき)でつなぐ
ORのときは「|」、NOTのときは「~」

データフレームから列を削除する

Pandas.DataFrameにあるdropメソッドを用いる
第一引数には削除したい列のラベルを記述する。複数ある場合はリストで記述できる。
axisは1を指定する

サンプルコード

import pandas as pd

# csvファイルをデータフレームに読み込む
df = pd.read_csv('population.csv', encoding='shift_jis')

# 国籍、性別を指定して行を抽出する
df = df[(df["国籍区分"]=="a)日外") & (df["性別"]=="a)男女")]

# 不要な列を削除する
df = df.drop(labels=["県", "国籍区分", "性別", "年齢区分", "内容"], axis=1)

今回は愛知県のデータなので”県”は自明。その他にも不要な列を削除した。

csvファイルに書き出す

Pandas.DataFrameにあるto_csvメソッドを用いるだけ(とても楽!)
第一引数にはファイル名を指定する
そのほかにもオプションとして、ラベルの有無や、文字コードなどが指定できる(今回はデフォルトのまま)

df.to_csv("extracted_pop.csv")
# デフォルトの引数
# df.to_csv("extracted_pop.csv", header=True, index=True, encoding='utf-8')

実行すると、extracted_pop.csvというファイルが実行ディレクトリに作成される

次の記事→Pandasで愛知県の人口が多い市区町村順に並び替える|Python

Comments

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です