PandasでConcatすると列数が増えた

Pandasのconcatメソッドでデータフレームを結合すると、列数が増える現象が発生。

カラム名にはデータと思しき値が入っている。

df1 = pd.read_csv(r'./example.csv', encoding="cp932", header=1)
df2= pd.read_csv(r'./example2.csv', encoding="cp932", header=1)

df = pd.concat([df1, df2])
df

データの中にカンマが入ったテキストでもあったのかと思い、元データを確認するが、それらしきものはない…。
しばらく思案した後、read_csvの引数、header=1に気がつく。

元データをよく見ると、df2側は1行目のファイル名(ヘッダー)がない!
どうも出処が異なるデータだったので、ヘッダー行が無いデータが混ざっていたのに気が付かなかった。

ヘッダーないのに引数指定したため、1行目のデータがヘッダ名になっていたみたい。
引数を除去し、そのまま読み込むことで列数が増えずに読み込みできた。

このサイトの主
投稿を作成しました 115

関連投稿

検索語を上に入力し、 Enter キーを押して検索します。キャンセルするには ESC を押してください。

トップに戻る