pythonにおけるarrayとリストの違いについてどうしても曖昧なままです。
listとnp.arrayの違いについて調べてみるとlistとnp.arrayではメモリ効率が異なるなどのlistのデメリットがあることなどは勉強しています。
しかしながらどうしても違いが曖昧なまま理解しているためか
'numpy.ndarray' object has no attribute 'columns'
や
'list' object has no attribute 'shape'
などのエラーを度々起こしてしまいます。
エラーの都度
data=np.array(df)などとarrayにその都度適宜変換しているのですが問題ないのでしょうか?
現在決定木を利用したプログラムの可視化を勉強しているのですが
sampleとfeatures用のXデータを作成の際に
X=[]
for i in range(n):
onedata=np.load("filename.npy")
data.append(onedata)
でlistとしてデータを格納し、Xとtargetdataのyを作成し、
clf.fit(X,y)で決定木のプログラムを作成しています。
predictまでは問題ないのですが、
決定木の可視化をおこなう際に
dot_data = StringIO()
tree.export_graphviz(clf, out_file=dot_data,feature_names=X.columns, max_depth=3)
graph = pydotplus.graph_from_dot_data(dot_data.getvalue())
graph.write_pdf("graph.pdf")
Image(graph.create_png())
と記載しているのですが、
'numpy.ndarray' object has no attribute 'columns'と表示されてしまいます。
そもそも特徴量とサンプルのためのXデータを作成する際はlistで格納していくことは望ましくないのでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/06/15 02:36