作成したクラスのimportがエラーになる
ある本でPythonの勉強をしており、その中でクラスのインスタンス化を実行したのですが、その際のクラスのimportがエラーを出してしまいます。
まず初めに、以下のようなコードでクラス作成を行っており、housePriceDataという散布図プロットのクラスを作成しています。
Python
1class housePriceData: 2 3 def __init__(self,path): 4 self.data = pd.read_csv(path) 5 6 def plotScatter(self,titles,levels): 7 8 fig=plt.figure() 9 10 xrange = [np.min(self.data['GrLivArea'].values), 11 np.max(self.data['GrLivArea'].values)] 12 yrange = [np.min(self.data['SalePrice'].values), 13 np.max(self.data['SalePrice'].values)] 14 15 ncol = int(len(titles)/2) 16 17 for ind in np.arange(len(titles)): 18 19 ax = fig.add_subplot(2,ncol,ind+1) 20 ax.set_title(titles[ind]) 21 ax.plot(self.data['MSSubClass']==levels[ind]['GriLivArea'].values, 22 self.data['MSSubClass']==levels[ind]['SalePrice'].values,'.') 23 ax.set_xlim([xrange[0],xrange[1]]) 24 ax.set_ylim([yrange[0],yrange[1]]) 25 ax.set_xlabel('GrLivArea',fontSize=14) 26 ax.set_ylabel('SalePrice',fontSize=14) 27 28 plt.tight_layout() 29 30 plt.show()
書籍ではその次のステップとしてクラスの実行例が記載されているのですが、そのファーストステップが「housePriceDataクラスをmyData としてインスタンス化」と説明されており、以下のようなコードとなっています。
Python
1import housePriceData as hpd 2myData = hpd.housePriceData(r"C:(略)\train.csv")
上記コードを実行すると、以下のようなエラーが表示されます。
ModuleNotFoundError Traceback (most recent call last)
<ipython-input-358-ed2d401d8f85> in <module>
----> 1 import housePriceData as hpd
2
3 myData = hpd.housePriceData(r"C:(略)\train.csv")
ModuleNotFoundError: No module named 'housePriceData'
疑問点
・housePriceDataはクラスですから、No module named 'housePriceData'となってしまうのは当然のようにも感じるのですが、クラスをimportするというのはどういう流れの動きなのでしょうか?
・なぜエラーになってしまうのでしょうか?
初心者のため、基本も分かっておりません。どうぞよろしくお願いいたします。
(使用書籍:ゼロからつくるPython機械学習プログラミング入門)
追記
環境はjupyter notebookです。
この質問内の1つ目のコードを1つのセルの中で実行し、2つ目のコード(import~)をその次のセルで実行しています。
回答2件
あなたの回答
tips
プレビュー