CSV登録されているデータをループ処理し、スクレイピングしていく際にCSVの読み込み方が問題になることがあります。
主に文字コードなどが原因になると思いますが、そこで役立つCSVの読み込み方を一覧化しておきます。
覚えきれませんからね…。
読み込むCSVはなんでもいいのですが、Python上でダミーデータが作れるとプログラムでエラーが出た時のテストにも便利です。
そのためダミーデータの作成方法もメモしています。
codecs — Codec registry and base classes — Python 3.9.7 documentation
PandasによるCSV読み込み|shift-jis
文字コードの指定読み込み、shift-jis版。
Windows環境からデータを受け取るとこの形式かと。
import pandas as pd df = pd.read_csv('1m.csv', encoding='shift-jis') print(df) print(df.columns)
PandasによるCSV読み込み|utf-8
df = pd.read_csv('1m.csv', encoding='utf-8') print(df)
PandasによるCSV読み込み|euc_jp
df = pd.read_csv('1m.csv', encoding='euc_jp') print(df)
データの区切り文字を指定する方法
カンマ区切りの場合。
df = pd.read_csv('1m.csv', sep=',') print(df)
ヘッダー(見出し)がないデータを読み込む場合
ヘッダーがあるデータでこの指定をすると、本来のヘッダーであった一行目がデータ一行目になり、ヘッダーとしては新しく連番のヘッダーが付与される。
df = pd.read_csv('1m.csv', header=None) print(df)
0 1 2 0 NaN ID Name 1 0.0 0 aq4bZUmJsA 2 1.0 1 98u4efc3pi 3 2.0 2 aOtVV3Jccb 4 3.0 3 R4ZXxjtqY8 ... ... ... ... 96 95.0 95 P8UgtD3HtK 97 96.0 96 T8V9KLDKQs 98 97.0 97 pM8QhicUel 99 98.0 98 rOSK9raOYj 100 99.0 99 P1dJeTREPa 101 rows × 3 columns
インデックスを指定する
大量のデータを扱う際に、インデックス名を指定することがあります。
df = pd.read_csv('to_csv.csv', index_col=2) print(df)
Unnamed: 0 ID Name aq4bZUmJsA 0 0 98u4efc3pi 1 1 aOtVV3Jccb 2 2 R4ZXxjtqY8 3 3 sQIobE08kz 4 4 ... ... ... P8UgtD3HtK 95 95 T8V9KLDKQs 96 96 pM8QhicUel 97 97 rOSK9raOYj 98 98 P1dJeTREPa 99 99 100 rows × 2 columns
PandasによるCSV読み込み|速度面の問題解決
後日

合同会社ムジンケイカプロ
SEO・サイト改善・業務効率支援
成果率と検索に強いホームページ制作・運用改善のご相談を承っています。
法人クライアントとの契約多数、WEB制作会社やIT専門人材との協業、サイト保守・運用まで幅広く対応しています。
(2025年7月現在)
-
ランサーズ実績:238件/評価191件(★5.0)/完了率99%/リピーター29人
-
ココナラ実績:販売実績66件/評価★5.0
サイト改善・集客最適化まで、一貫してお任せいただけます。
当サイトはリンクフリーです
引用・SNSでの共有はご自由にどうぞ。事前連絡は不要ですが、もしご連絡いただければ、貴社コンテンツをご紹介できる場合もございます。