MENU
  • VPS(レンタルサーバ)比較
  • ITエンジニアの転職
  • IT技術入門(Engineers.LOG)
カテゴリー
  • IT関連 (623)
    • Bootstrap (2)
    • クラウド (4)
    • サーバー技術 (185)
    • ストレージ (7)
      • NetApp (7)
    • ネットワーク技術 (91)
      • Cisco (36)
      • Juniper (18)
      • 負荷分散装置 (17)
    • パソコン関連 (92)
      • MAC (25)
      • Windows (54)
    • プログラミング (154)
      • Ansible (11)
      • C言語 (23)
      • Python (111)
        • Django (20)
    • 仮想化 (88)
      • Docker (63)
      • VMware (23)
  • VPS (200)
    • ABLENET VPS (16)
    • Amazon Lightsail(VPS) (2)
    • ConoHaVPS (37)
    • mixhostVPS (4)
    • WebARENAIndigo (16)
    • XServerVPS (34)
    • お名前.com VPS (12)
    • さくらのVPS (24)
    • カゴヤクラウドVPS (13)
    • シンVPS (7)
  • レンタルサーバー (56)
    • エックスサーバー (38)
  • 光回線 (8)
  • 技術スキルアップ開発・学習 (7)
    • Envader (2)
    • RareTECH (2)
    • Udemy (3)
もう現役20年超えましたー。経験値ならだれにも負けないエンジニア技術ブログ
インフラエンジニアの技術LOG
  • VPS(レンタルサーバ)比較
  • ITエンジニアの転職
  • IT技術入門(Engineers.LOG)
インフラエンジニアの技術LOG
  • VPS(レンタルサーバ)比較
  • ITエンジニアの転職
  • IT技術入門(Engineers.LOG)
  1. ホーム
  2. IT関連
  3. プログラミング
  4. Python
  5. 【Python】ライブラリ「Pandas」で「C error」解決!エクセルのカラムエラー

【Python】ライブラリ「Pandas」で「C error」解決!エクセルのカラムエラー

2021 9/16
Python
2020年2月9日2021年9月16日

Pythonで、CSVファイルから、エクセル(elsx)へデータを出力する際、カラムエラーが発生したので対応した時のまとめをしておきます。

「Pandas」ライブラリを使用した際に今回のようなエラーが発生した際は参考にしてください。

目次
安くて高速!高性能VPSで快適開発!
最速5分でサーバー構築
>>>こちらをチェック

エンジニア必見! 技術力を伸ばすVPS徹底比較
>>>VPS比較

【Pandas】でカラムエラーが発生した際の対応まとめ

今回、CSVファイルを読み込んで、中身のデータをエクセル(xlsx)に書き込むプログラムを作成しました。

import pandas as pd

# CSVファイルの読み込み
data = pd.read_csv('file_out.csv', encoding='cp932')

# Excel形式で出力
data.to_excel('excel-data.xlsx', encoding='utf-8')

print('CSV > Excel変換完了')

このプログラムを実行すると以下のようなエラーが発生しました。

Traceback (most recent call last):
  File "ssh_test_6.py", line 40, in <module>
    data = pd.read_csv('file_out.csv')
  File "C:Users\0003563AppDataLocalProgramsPythonPython38-32libsite-packagespandasioparsers.py", line 685, in parser_f
    return _read(filepath_or_buffer, kwds)
  File "C:Users\0003563AppDataLocalProgramsPythonPython38-32libsite-packagespandasioparsers.py", line 463, in _read
    data = parser.read(nrows)
  File "C:Users\0003563AppDataLocalProgramsPythonPython38-32libsite-packagespandasioparsers.py", line 1154, in read
    ret = self._engine.read(nrows)
  File "C:Users\0003563AppDataLocalProgramsPythonPython38-32libsite-packagespandasioparsers.py", line 2059, in read
    data = self._reader.read(nrows)
  File "pandas/_libs/parsers.pyx", line 881, in pandas._libs.parsers.TextReader.read
  File "pandas/_libs/parsers.pyx", line 896, in pandas._libs.parsers.TextReader._read_low_memory
  File "pandas/_libs/parsers.pyx", line 950, in pandas._libs.parsers.TextReader._read_rows
  File "pandas/_libs/parsers.pyx", line 937, in pandas._libs.parsers.TextReader._tokenize_rows
  File "pandas/_libs/parsers.pyx", line 2132, in pandas._libs.parsers.raise_parser_error
pandas.errors.ParserError: Error tokenizing data. C error: Expected 10 fields in line 19, saw 49

17行目で「C error」、カラム(Column)に関するエラーが発生しました。
色々と調べるとどうも列をうまく読み込めていないことにより、うまくエクセルにデータを貼り付けることができていないようです。

CSVを読み込む際に「カラム(Column)」名を指名する

エラーの問題は、CSVのカラムが読み込めないので、明示的にカラム名を作成して読み込ませることで、エラーを回避することができました。

以下が設定の例となります。

# CSVファイルの読み込み
col_names = ['c{0:02d}'.format(i) for i in range(100)]
data = pd.read_csv('file_out.csv', encoding="shift-jis", names = col_names)

エンコーディングの「sift-jis」は以下でも問題ないです。

data = pd.read_csv('file_out.csv', encoding='cp932', names = col_names)

詳細は以下の記事を確認ください。

あわせて読みたい
【Python】UnicodeDecodeError: が発生した際の対処法 Pythonコードを書いている際にプログラムを実行すると「UnicodeDecodeError」が発生しました。 このようなエラーが発生する人は結構いるはず。 今回は、このエラーの対...

対応後のプログラム

CSVの読み込みの際、カラム名を指名するプログラム全体は以下のようになります。

import pandas as pd

# CSVファイルの読み込み
col_names = ['c{0:02d}'.format(i) for i in range(100)]
data = pd.read_csv('file_out.csv', encoding='cp932', names = col_names)

# Excel形式で出力
data.to_excel('excel-data.xlsx', encoding='utf-8')

print('CSV > Excel変換完了')

実行後、エクセルにデータが出力されていることを確認できます。

列にカラム名「c0x」が表示され、正常にデータが出力されています。

エンジニアスキルをアップする勉強法

ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。

あわせて読みたい
現役エンジニアがおすすめするVPSレンタルサーバ比較(高速SSD限定) 格安VPS比較(2025年最新版)

Python
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする コメントをキャンセル

email confirm*

post date*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)



検索
カテゴリー
新着記事
  • XServerVPS アニメ風 男の子 プログラミングをしている VPSを利用している 楽しそうにしている
    XServerVPSで証明書(SSL)を取得する方法
    2025年3月24日
    XServerVPS
  • レンタルサーバ アニメ風 女の子 楽しんでパソコンをしている 目がキラキラ
    WordPressがレンタルサーバよりVPSで利用する方がおすすめの理由
    2025年3月19日
    VPS
  • VPS レンタルサーバー アニメ風 女の子 プログラミングをしている VPSを利用している 楽しそうにしている
    VPSとクラウドの違いとは?初心者向けにわかりやすく解説
    2025年3月5日
    VPS
  • シンVPS アニメ風 女の子 パソコン プログラミングをしている VPSを利用している 楽しそうにしている
    シンVPSはWindows serverを利用できない。その理由と利用できるOSは?
    2025年3月4日
    シンVPS
  • シンVPS アニメ風 女の子 パソコン プログラミングをしている VPSを利用している 楽しそうにしている
    シンVPSでゲームを利用する環境はあるのか
    2025年3月4日
    シンVPS
  • シンVPS アニメ風 女の子 パソコン プログラミングをしている VPSを利用している 楽しそうにしている
    シンVPSのサイトの表示速度は他社に比べて早いのか?
    2025年3月4日
    シンVPS
目次
目次