DBSCAN (scikit Learn の実装) と位置データを使用してクラスター化しようとしています。私のデータは np 配列形式ですが、Haversine 式で DBSCAN を使用するには、距離行列を作成する必要があります。これを行おうとすると、次のエラーが発生します(「モジュール」呼び出し不可エラー)。オンラインで読んだことから、これはインポートエラーですが、私には当てはまらないと確信しています。独自の hasersine 距離式を作成しましたが、これでエラーが発生することはないと確信しています。
これは私の入力データ、np 配列 (ResultArray) です。
[[ 53.3252628 -6.2644198 ]
[ 53.3287395 -6.2646543 ]
[ 53.33321202 -6.24785807]
[ 53.3261015 -6.2598324 ]
[ 53.325291 -6.2644105 ]
[ 53.3281323 -6.2661467 ]
[ 53.3253074 -6.2644483 ]
[ 53.3388147 -6.2338417 ]
[ 53.3381102 -6.2343826 ]
[ 53.3253074 -6.2644483 ]
[ 53.3228188 -6.2625379 ]
[ 53.3253074 -6.2644483 ]]
そして、これがエラーになっているコード行です。
distance_matrix = sp.spatial.distance.squareform(sp.spatial.distance.pdist
(ResultArray,(lambda u,v: haversine(u,v))))
これはエラーメッセージです:
File "Location.py", line 48, in <module>
distance_matrix = sp.spatial.distance.squareform(sp.spatial.distance.pdist
(ResArray,(lambda u,v: haversine(u,v))))
File "/usr/lib/python2.7/dist-packages/scipy/spatial/distance.py", line 1118, in pdist
dm[k] = dfun(X[i], X[j])
File "Location.py", line 48, in <lambda>
distance_matrix = sp.spatial.distance.squareform(sp.spatial.distance.pdist
(ResArray,(lambda u,v: haversine(u,v))))
TypeError: 'module' object is not callable
scipy を sp としてインポートします。(scipy を sp としてインポート)