質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

2回答

618閲覧

プログラムがうまく動かない

macmac

総合スコア25

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2021/06/05 10:56

Excel Python 自動化の超基本という本を購入してプログラムをダウンロードして動かしているのですがうまく動きません。
丸投げのような形ですいません。
原因が分かりません。ご教示をお願いします。
下記にプログラムとエラー内容を示します。

プログラム内容
#ケーキ店の売り上げのデータと気温を学習させる
import datetime
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
def readTempData(fileName):#気象データを読み込み
df = pd.read_csv(fileName,encoding="Shift_JIS",skiprows=6)
df.columns = ["日付","気温","品質情報","均質番号"]
df['日付'] = pd.to_datetime(df['日付'])#曜日の列を追加 月曜日=0 日曜日=6
df["曜日"] = df["日付"].dt.dayofweek
df["月"] = df["日付"].dt.month
df["日"] = df["日付"].dt.day
return df
def readSalesData(fileName):#売上データを読み込み
df = pd.read_excel(fileName)
df['日付'] = pd.to_datetime(df['日付'])
return df

#気象データを読み込み
dfTemp = readTempData("気象データ2017.csv")
#売上データを読み込み
dfShop = readSalesData("洋菓子店売上リスト2017.xlsx") #気象データと売上データを統合
df = dfTemp.copy()
df = df.merge(dfShop,how="inner",on="日付")
x = df[["月","日","曜日","気温"]] #与えるデータ 2
y = df["売上金額"] #求めるデータ 23 print(x)
print(y)
#重回帰分析
model = LinearRegression()
model.fit(x,y) #訓練の開始
print(model.coef_) #回帰変数
print(model.intercept_) #切片
print(model.predict(x)) #予測値の表示
print(model.score(x,y)) #相関の表示

実行エラー内容
C:\Users\nao\AppData\Local\Programs\Python\Python35\python.exe "C:/Users/nao/Desktop/Excel×Python 自動化の超基本-20210523T192529Z-001/Excel×Python 自動化の超基本/Chapter8/pg35_01.py"
Traceback (most recent call last):
File "C:/Users/nao/Desktop/Excel×Python 自動化の超基本-20210523T192529Z-001/Excel×Python 自動化の超基本/Chapter8/pg35_01.py", line 20, in <module>
dfTemp = readTempData("気象データ2017.csv")
File "C:/Users/nao/Desktop/Excel×Python 自動化の超基本-20210523T192529Z-001/Excel×Python 自動化の超基本/Chapter8/pg35_01.py", line 7, in readTempData
df = pd.read_csv(fileName,encoding="Shift_JIS",skiprows=6)
File "C:\Users\nao\AppData\Roaming\Python\Python35\site-packages\pandas\io\parsers.py", line 678, in parser_f
return _read(filepath_or_buffer, kwds)
File "C:\Users\nao\AppData\Roaming\Python\Python35\site-packages\pandas\io\parsers.py", line 440, in _read
parser = TextFileReader(filepath_or_buffer, **kwds)
File "C:\Users\nao\AppData\Roaming\Python\Python35\site-packages\pandas\io\parsers.py", line 787, in init
self._make_engine(self.engine)
File "C:\Users\nao\AppData\Roaming\Python\Python35\site-packages\pandas\io\parsers.py", line 1014, in _make_engine
self._engine = CParserWrapper(self.f, **self.options)
File "C:\Users\nao\AppData\Roaming\Python\Python35\site-packages\pandas\io\parsers.py", line 1708, in init
self._reader = parsers.TextReader(src, **kwds)
File "pandas_libs\parsers.pyx", line 384, in pandas._libs.parsers.TextReader.cinit
File "pandas_libs\parsers.pyx", line 695, in pandas._libs.parsers.TextReader._setup_parser_source
FileNotFoundError: File b'\x8bC\x8f\xdb\x83f\x81[\x83^2017.csv' does not exist

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2021/06/05 11:02

このままではコードが読めないので、質問を編集し、<code>ボタンを押し、出てくる’’’の枠の中にコードを貼り付けてください
can110

2021/06/05 11:14

実行しているOSなど環境の詳細を記載ください。日本語版のWindowsでしょうか?
guest

回答2

0

おはようございます。

問題文読ませていただきました。

恐らく、ファイルパスの間違いでうまくいっていないようです。

一度ターミナルを開いて、気象データ2017.csvファイルのパスをご確認ください。(cd, pwdを利用)

それから以下記事のベストアンサーの方の事例を参考に、修正いただけますと幸いです。????‍♂️
https://teratail.com/questions/158577

投稿2021/06/05 22:34

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

以下のような問題のどれかが該当しているかと思います。

1 実行しているディレクトリにCSVがない
該当のプログラムを実行しているディレクトリの構成はどのような形になっていますでしょうか?
下記のような構成で、powershellなどでの実行時、該当のディレクトリから実行されていますか?

該当のディレクトリ  ├ 気象データ2017.csv  ├ 洋菓子店売上リスト2017.xlsx  ├ 該当のプログラム.py  └ その他のファイル群

2 read_csv処理時のエンコーディングが異なる
Windows環境かつ、日本語ファイルパスでの読み込みのため、
pandas側でうまく読み込めていない可能性がございます。
下記のような指定にしましてpandasの読み込み方式をCからPythonに変換すると
うまく行く可能性がございます。

df = pd.read_csv(fileName, engine="python", encoding="Shift_JIS", skiprows=6)

投稿2021/06/05 21:54

編集2021/06/05 21:55
m2l

総合スコア318

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問