Python Forum
Sklearn Agglomerative Hierarchical Clustering - help with array set up - Printable Version

+- Python Forum (https://python-forum.io)
+-- Forum: Python Coding (https://python-forum.io/Forum-Python-Coding)
+--- Forum: Data Science (https://python-forum.io/Forum-Data-Science)
+--- Thread: Sklearn Agglomerative Hierarchical Clustering - help with array set up (/Thread-Sklearn-Agglomerative-Hierarchical-Clustering-help-with-array-set-up)



Sklearn Agglomerative Hierarchical Clustering - help with array set up - pstarrett - Feb-19-2017

I am working with sklearn's Agglomerative Hierarchical Clustering and I have a simple issue with how to set up the input array. I am following the example here:

https://docs.scipy.org/doc/scipy/reference/generated/scipy.cluster.hierarchy.dendrogram.html

I have a basic understanding of the numpy array but having difficulty setting this up to a rather simple use case (I have searched extensively for examples and all use randomly generated data to create array values). I would simply like to take one column of account numbers and cluster them by the dollar value (an integer, rounded to nearest dollar) in another column. I am using a CSV DictReader so you can assume I will know how to pull data from the data source and load into the array. I just need to know if creating an array with the account number in one column and the dollar amount in the other is sufficient (assuming the distance metric chosen will be used to calculate the distances between dollar values between account numbers). I believe I know how to set the label values (so that the leaves show up as corresponding account numbers) but any help there is also appreciated. Thank you!


RE: Sklearn Agglomerative Hierarchical Clustering - help with array set up - Larz60+ - Feb-19-2017

There are some demo's here: http://scikit-learn.org/stable/auto_examples/cluster/plot_face_ward_segmentation.html


RE: Sklearn Agglomerative Hierarchical Clustering - help with array set up - pstarrett - Feb-20-2017

Larz60, thank you very much for the link. I will try to digest this but there is a lot going on in areas where I have no background (I did see this example actually and passed on it given how involved it is). My need is very simple and my hope is to find a simple approach to loading one column with integer data that clusters on the label. Thank you!


RE: Sklearn Agglomerative Hierarchical Clustering - help with array set up - zivoni - Feb-21-2017

Simple example :
account_numbers = np.array(['A10', 'A20', 'A30', 'A40', 'A50', 'A60', 'A70'])
values = np.array([1234, 432, 342, 1130, 1000, 400, 700]).reshape((-1,1))

plt.figure()
Z = hierarchy.linkage(values)
dn = hierarchy.dendrogram(Z, labels=account_numbers)
plt.show()



RE: Sklearn Agglomerative Hierarchical Clustering - help with array set up - pstarrett - Feb-21-2017

zivoni, thank you very much. I will give that a try!