【脚本语言系列】关于Python机器学习scikits-learn,你需要知道的事

本文介绍如何使用scikits-learn进行机器学习实验,包括安装方法、基本计算示例及简单的聚类分析步骤。聚类分析部分通过下载股票数据并应用亲和传播算法来演示如何对数据进行分组。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如何使用scikits-learn

  • 使用easy_install或pip安装scikits-learn
pip install -U scikit-learn
easy_install -U scikit-learn



* 简单计算样例

from sklearn import datasets

boston_prices = datasets.load_boston()
print "Data shape", boston_prices.data.shape
print "Data max = %s min = %s" %(boston_prices.data.max(), boston_prices.data.min())
print "Target max = %s min = %s" %(boston_prices.target.max(), boston_prices.target.min())

这里写图片描述
* 简单聚类分析
1. 下载股票数据

start = datetime.datetime(2011, 01, 01)
end = datetime.datetime(2012, 01, 01)

quotes = [finance.quotes_historical_yahoo_ochl('^GSPC', start, end, asobject=True, adjusted=True) for symbol in symbols]

close = numpy.array([q.close for q in quotes]).astype(numpy.float)
print close.shape


2. 计算亲和度矩阵

logreturns = numpy.diff(numpy.log(close))
print logreturns.shape

logreturns_norms = numpy.sum(logreturns ** 2, axis = 1)
S = -logreturns_norms[:, numpy.newaxis]-logreturns_norms[numpy.newaxis,:]+2*numpy.dot(logreturns, logreturns.T)


3. 亲和传播聚类

aff_pro = sklearn.cluster.AffinityPropagation().fit(S)
labels = aff_pro.labels_

for i in xrange(len(labels)):
     print "%s in Cluster %d" % (symbols[i],labels[i])


什么是scikits-learn

scikits-learn项目提供了机器学习相关的API。sckits-learn项目中包含了若干数据集和范例图像,可以用来做一些实验。
聚类(clustering)代表一类机器学习算法,用来基于相似度对研究对象分组。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值