CSVを読み込みたい(pandas.read_csv)
1pd.read_csv("ファイル名")
pandas.read_csvでCSVファイルを読み込めます。
デフォルトの区切り文字は,(カンマ)です。
複数のファイルを読み込んで、データフレームに変換する場合はpandas.concatを使います。
区切り文字を指定したい(sep)
1pd.read_csv("ファイル名", sep="\t") # タブ区切り
2pd.read_csv("ファイル名", sep=" ") # スペース区切り
sep(またはdelimiter)オプションで区切り文字を指定して、任意の区切り文字のテキストファイルを読み込むことができます。
エンコーディングを指定したい(encoding)
1pd.read_csv("ファイル名", encoding="shift_jis") # シフトJIS
2pd.read_csv("ファイル名", encoding="utf-16") # UTF-16
encodingオプションを使ってPythonの標準的なエンコーディング名)を指定できます。
デフォルトはencoding="utf-8"です。
utf-8とutf_8のように-(ハイフン)と_(アンダースコア)はエイリアスになっていて、どちらでも使えます。
読み込んだデータが文字化けしている場合はエンコーディングを指定する必要があります。
WindowsのExcelで作成されたCSVの場合、そのままでは文字化けすることが多く、だいたいシフトJIS(shift_jis)を指定すると解決します。
日付に変換したい
1pd.read_csv("ファイル名", parse_dates=["公開日", "更新日"])
日付のカラムがある場合、parse_datesを使って日付オブジェクトに変換できます。
1data = pd.read_csv("ファイル名")
2data["公開日"] = pd.to_datetime(data["公開日"])
3data["更新日"] = pd.to_datetime(data["更新日"])
データを読み込んだあとに、pandas.to_datetimeで変換できます。 日付カラムのフォーマットが独特な場合に、ISO8601などの一般的な形に文字列への変換が必要な場合に便利です。
1data["公開日"] = pd.to_datetime(data["公開日"]) # 日付オブジェクトに変換
2data["公開年"] = data["公開日"].dt.year # アクセサを使って「年」を取得
3data["公開年月"] = data["公開日"].dt.format("%Y-%m") # アクセサを使って任意の文字列に変換
日付オブジェクトはdtアクセサを使って日付に関する操作ができます。 dt.strftimeで任意の日付文字列に変換することもできます。
コメント行をスキップしたい
1pd.read_csv("ファイル名", comment="1文字") # コメント記号は1文字で指定
2pd.read_csv("ファイル名", comment="#") # '#'がコメント記号
commentオプションを使って、データをスキップできます。
シェルスクリプトで解析することを前提にしていたデータの場合、読み込みたくない行の先頭に#を書いたりします。
このようなデータもPandasでそのまま再利用して分析できます。
コメント記号を指定して、その記号が先頭にある行をスキップできます。