前提・実現したいこと
python初心者です。python3(version3.9.7)のpandasモジュールにてCSVファイルを読み込み、matplotlibでグラフを出力するプログラムを作っています。しかし、以下のエラーメッセージが発生する状態です。
*エラーメッセージ*
UnicodeDecodeError: 'shift_jis' codec can't decode byte 0xef in position 0: illegal multibyte sequence
ググったところ、読み込んだエクセルファイルの文字コードがshift_jisになっていないと怒られるとの情報があったため、以下のソースコードのようにpd.read_csvの第二引数に「encoding = 'shift-is'」を加えたのですが依然として通らない状況です。本エラーを解決し、グラフを出力したいのですが解決案をご提供いただけないでしょうか?
ソースコード
import pandas as pd import matplotlib.pyplot as plt #ファイルを読み込んでdf(data frameの略)に格納 df = pd.read_csv("python2.csv",encoding = 'shift-jis') #ラベルごとの値を格納 numbers = df['number'].values math = df['math'].values english = df['english'].values #グラフ化 plt.plot(numbers,math) plt.plot(numbers,english) #グラフにグリッド線(十字線)を記載 plt.grid() plt.show()
python3/version:3.9.7
読み込むCSVファイル
試したこと
csvファイル内の項目(number・math・english)のセル内にスペースが混じっていると、プログラムが項目を検索できないので、csvファイル内のスペースは削除済みです。
回答1件
あなたの回答
tips
プレビュー