全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 python论坛
10967 6
2015-10-28
文章首发
其他阅读渠道:
人大经济论坛微信公号
知乎

许许多多的人都非常容易爱上Python这门语言。自从1991年诞生以来,Python现在已经成为最受欢迎的动态编程语言之一,尤其进入21世纪以来,Python在行业应用和学术研究中进行科学计算的势头也越来越迅猛。

                                                                                                      ——《Python for Data Analysis》(Wes Mckinney)

Python不仅在编程方面有强大的实力,而且由于不断改进的第三方库,Python在数据处理方面也越来越突出;近年来,非常火爆的机器学习(Machine Learning)以及前沿的自然语言处理(Natural Language Processing)也选择Python作为基础工具。所以要想在数据科学领域有所进步的话,了解学习Python看来还是有所必要的。

本文通过简单案例,分享Python在数据处理方面的实际应用,属于基础学习范畴,希望刚刚接触Python学习的新手们能通过应用去解决实际问题从而巩固掌握Python操作,在这里与大家相互学习,也希望大神们轻拍:)


Without further ado,lets get started

#进入正题#

本文使用Python2.7版本,操作在集成开发坏境Spyder中进行;选择的数据集,是大名鼎鼎的鸢尾花数据集iris.csv,数据集网上公开请自行下载!


1. 数据集截图如下图1

该数据集包含数据有150行*5列。前4列分别是:花萼的长度、宽度,花瓣的长度、宽度;最后一列是花的分类,总共分3类。

shuju.png


图1.iris数据集截图


2. 读入数据,代码如下

复制代码

输出结果如下:

复制代码


Python通过pandas库,读入数据,注意读取时文件路径的填写,需用“\\”或者“/”符号。同时,Python面向对象编程,shape及head函数建立在iris数据框对象之上,这与R语言不同,R语言更加“函数化”,dim及head等函数都是内置函数。


3. 描述性统计,代码如下

复制代码

输出结果如下:

复制代码

从输出结果中可以看到每列数据的平均值等统计数值,较简单不多说。


4. 聚类分析,代码如下:
复制代码

输出结果如下:

复制代码


在Python中利用sklearn库中的cluster.Kmeans对irisFeatures进行聚类分析,并输出聚类结果。


5.决策树模型,代码如下

复制代码

输出结果:

复制代码

利用CART算法对iris数据集建立模型,并预测结果,同时输出训练集测试集的预测正确率。相关说明及代码含义均在代码中已注释。


最后:以上仅为小例子,实际问题要比这个复杂的多:数据清洗、模型选择、调参等等!因为网上教程给出完整数据、代码及结果的资料不多,所以把自己的浅薄经验分享给大家!


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2015-10-28 10:05:11
沙发?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-10-28 10:12:56
jerker 发表于 2015-10-28 10:05
沙发?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-11-4 10:52:39
非常不错
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-11-5 09:05:33
很厉害
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-4-20 18:35:02
我这边在实验的时候发现有几个问题是版本影响,需要注意
1、iris=pd.read_csv("C:\\Users\\Administrator\\Desktop\\iris.csv",header=False)
需要改为iris=pd.read_csv("C:\\Users\\Administrator\\Desktop\\iris.csv")
2、irisFeatures=iris.ix[:,1:4] #去掉Name列
需要改为irisFeatures=iris.ix[:,0:4] #去掉Name列
3、test_target属性为series,有index与values两个属性,可使用test_target.values查看Name值
因此程序中的test_target需要改为test_target.values,train_target改为train_target.values
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

分享

扫码加好友,拉您进群