【发布时间】:2015-05-16 04:34:29
【问题描述】:
我有一个如下所示的数据集:
{'dns_query_count':'11','http_hostnames_count':'7','dest_port_count':'3','ip_count':'11','signature_count':'0','src_ip':'10.0 .64.42', 'http_user_agent_count': '2'}
这已经从 csv 转换为 dict
然后我使用 DictVectorizer 来转换它
from sklearn.feature_extraction import DictVectorizer
vec = DictVectorizer()
d = vec.fit_transform(data).toarray()
然后我尝试在上面使用 Kmeans
from sklearn.cluster import KMeans
k = KMeans(n_clusters=2).fit(d)
我的问题是如何获得关于我的数据的哪一行属于哪个集群的信息?
我希望得到这样的东西:
{'dns_query_count':'11','http_hostnames_count':'7','dest_port_count':'3','ip_count':'11','signature_count':'0','src_ip':'10.0 .64.42','http_user_agent_count':'2',集群:'1'}
谁能给我一个分步示例,如何从我展示的原始数据到包含它们所属集群的信息的相同数据?
例如,我在这个数据集上使用了 Weka,它向我展示了我想要的东西 - 我可以单击图表上的数据点并准确读取哪些数据点属于哪个集群。如何使用 sklearn 获得相似的结果?
【问题讨论】:
标签: python machine-learning scikit-learn k-means