LoginSignup
0
1

More than 3 years have passed since last update.

pandasのread_csvでcsvファイルを読み込んだら先頭列がindexになる

Posted at

概要

社内システムでダウンロードしたデータをpandasで処理しようとしたら、先頭列がindexになってしまってハマった事例の紹介

現象

問題のデータ(もちろん実際のデータとは違います。)

name,population,area
Osaka,2691k,223,
Nara,353k,276,
Kyoto,1472k,827,
Koube,1542k,552,
Wakayama,355k,208,

一見問題の無さそうな下記のようなデータをread_csv()すると、先頭列(name)がindexになっている。

Screen Shot 2020-01-29 at 23.24.55.png

原因

各レコードの最後には「,」があるのに、Header行の末尾には「,」が無いのが原因。
試しにヘッダー行の最後に「,」を入れると。下のように一列余計なカラムは追加されるがindexは自動で振り出された。

Screen Shot 2020-01-29 at 23.32.12.png

今回のサンプルはわかりやすいようにcsvファイルでまとめたが、実際に業務でつまったのはtsv(タブ区切り)だったので余計に時間を要してしまった。

教訓と感想

ツールに溺れずデータをちゃんと見よう。

にしても、pandasで軽くデータを編集できるようになってからExcelを使う機会が減った気がする。今回のデータも50Mぐらいのtsvファイルだったけど数秒で読み込めたし。(Excelはハングしてしまった・・・・。)

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1