Python 从 .csv 文件聚类作为输入
Python clustering from .csv file as input
我正在尝试找到一种类似的方法来使用 Python 执行聚类,就像我使用 Weka 一样。
我试过 scipy,但是它得到一个数组作为输入。
我有一个 .csv 文件,包含
objectId, attribute1, attribute2, .., attributeN
e.g. '1234', 0, 1, 0,1,1,1, ..., 0
Attribute1,2,..,N 获取值 0 和 1。
有没有办法加载上述 .csv 文件并使用 python 库执行聚类并获取每个 objectId 所属的聚类?
我的 .csv 文件包含 300.000 条 ojectId 记录。
我已经将我的 .csv 文件转换为 weka 的 .arff 格式,但是执行聚类最多需要 6 个小时,所以我正在寻找一种更快的方法来完成它,并希望 python 库会更快。
提前致谢。
我不知道这是否是您想要的,但是:
阅读 .csv:
f = open('yourcsv.csv', mode='r')
content = f.readlines()
现在您可以创建一个列表来添加所有信息
cluster = []
for line in content:
list = line.decode('utf-8').strip().split(',')
cluster[list[0]] = list[1 : len(list) - 1]
// 现在您可以像这样访问所有信息
objectId = 'someIdentifier'
info = cluster[objectId]
我正在尝试找到一种类似的方法来使用 Python 执行聚类,就像我使用 Weka 一样。
我试过 scipy,但是它得到一个数组作为输入。
我有一个 .csv 文件,包含
objectId, attribute1, attribute2, .., attributeN
e.g. '1234', 0, 1, 0,1,1,1, ..., 0
Attribute1,2,..,N 获取值 0 和 1。
有没有办法加载上述 .csv 文件并使用 python 库执行聚类并获取每个 objectId 所属的聚类?
我的 .csv 文件包含 300.000 条 ojectId 记录。
我已经将我的 .csv 文件转换为 weka 的 .arff 格式,但是执行聚类最多需要 6 个小时,所以我正在寻找一种更快的方法来完成它,并希望 python 库会更快。
提前致谢。
我不知道这是否是您想要的,但是:
阅读 .csv:
f = open('yourcsv.csv', mode='r')
content = f.readlines()
现在您可以创建一个列表来添加所有信息
cluster = []
for line in content:
list = line.decode('utf-8').strip().split(',')
cluster[list[0]] = list[1 : len(list) - 1]
// 现在您可以像这样访问所有信息
objectId = 'someIdentifier'
info = cluster[objectId]