




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
用Pandas作图分类:python2014-07-11 12:2032人阅读评论(0)收藏举报目录(?)+来自:/python/2014/02/23/Plotting_with_Pandas/#wat_e_12612920-6fe4-464e-a2b0-3b1f13c1a4f6_zss_关于Pandas的基本使用介绍,请查看另一篇博文:Python中的结构化数据分析利器-Pandas简介推荐使用ipython的pylab模式,如果要在ipython notebook中嵌入图片,则还需要指定pylab=inline。ipython -pylab #ipython的pylab模式ipython notebook -pylab=inline #notebook的inline模式import pandas as pd基本画图命令Pandas通过整合matplotlib的相关功能实现了基于DataFrame的一些 作图功能。下面的数据是每年美国男女出生数据:url = //course/dasi/present.txtpresent = pd.read_table(url, sep= )present.shape(63, 3)present.columnsIndex(uyear, uboys, ugirls, dtype=object)可以看到这个数据集共有63条记录,共有三个字段:Year,boys,girls。为了简化计算将year作为索引。present_year = present.set_index(year)plot是画图的最主要方法,Series和DataFrame都有plot方法。可以这样看一下男生出生比例的趋势图:present_yearboys.plot()plt.legend(loc=best)这是Series上的plot方法,通过DataFrame的plot方法,你可以将男生和女生出生数量的趋势图画在一起。present_year.plot()present_year.girls.plot(color=g)present_year.boys.plot(color=b)plt.legend(loc=best)可以看到DataFrame提供plot方法与在多个Series调用多次plot方法的效果是一致。present_year:10.plot(kind=bar)plot默认生成是曲线图,你可以通过kind参数生成其他的图形,可选的值为:line, bar, barh, kde, density, scatter。present_year:10.plot(kind=bar)present_year:10.plot(kind=barh)如果你需要累积的柱状图,则只需要指定stacked=True。present_year:10.plot(kind=bar, stacked=True)制作相对的累积柱状图,需要一点小技巧。首先需要计算每一行的汇总值,可以在DataFrame上直接调用sum方法,参数为1,表示计算行的汇总。默认为0,表示计算列的汇总。present_year.sum(1):5year1940 23603991941 25134271942 28089961943 29368601944 2794800dtype: int64有了每一行的汇总值之后,再用每个元素除以对应行的汇总值就可以得出需要的数据。这里可以使用DataFrame的div函数,同样要指定axis的值为0。present_year.div(present_year.sum(1),axis=0):10.plot(kind=barh, stacked=True)散点图和相关plot也可以画出散点图。使用kind=scatter, x和y指定x轴和y轴使用的字段。present_year.plot(x=boys, y=girls, kind=scatter)再来载入一下鸢尾花数据。url_2 = /pydata/pandas/master/pandas/tests/data/iris.csviris = pd.read_csv(url_2)iris.head(5)SepalLengthSepalWidthPetalLengthPetalWidthName00.2Iris-setosa14.93.01.40.2Iris-setosa0.2Iris-setosa0.2Iris-setosa45.0Iris-setosa5 rows 5 columnsiris.corr()SepalLengthSepalWidthPetalLengthPetalWidthSepalLength1.000000-0.1093690.8717540.817954SepalWidth-0.1093691.000000-0.420516-0.356544PetalLength0.871754-0.4205161.0000000.962757PetalWidth0.817954-0.3565440.9627571.0000004 rows 4 columnsfrom pandas.tools.plotting import scatter_matrixscatter_matrix(iris, alpha=0.2, figsize=(6, 6), diagonal=kde)array(, , , , , , , , , , , , , , , , dtype=object)箱图DataFrame提供了boxplot方法可以用来画箱图。iris.boxplot()boxes: , , , , caps: , , , , , , , , fliers: , , , , , , , , medians: , , , , whiskers: , , , , , , , 通过by参数可以计算不同分组情况下,各个字段的箱图。iris.boxplot(by=Name, figsize=(8, 8)array(, , , , dtype=object)直方图和概率密度分布iris.ix:,:-1.hist()iris.plot(kind=kde)多变量的可视化Radvizfrom pandas.tools.plotting import radvizradviz(iris, Name)Andrews Curvesfrom pandas.tools.plotting import andrews_curvesandrews_curves(iris, Name)Parallel Coordinatesfrom pa
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 货物堆场租赁合同范本
- 商场摊位购买合同范本
- 软件代理公司合同范本
- 郑州水管采购合同范本
- 窗帘墙布销售合同范本
- 土地置换商铺合同范本
- 承包园林建设合同范本
- 酒类代理销售合同范本
- 甘蔗承包协议合同范本
- 广东电网劳务合同范本
- 五社联动推进基层治理现代化
- 心理危机干预中的伦理问题探讨-深度研究
- 金沙县殡仪馆项目可行性研究报告
- 《糖尿病健康讲座》课件
- 高速铁路接触网设备运行与维护课件:接触网分段绝缘器
- 《湖南省房屋建筑和市政工程消防质量控制技术标准》
- 《高压开关柜》课件
- 装配钳工高级试题(附答案)
- 【数学】一元一次方程的应用(第2课时)课件 2024-2025学年北师大版七年级数学上册
- 劳务用工合同
- 215kWh工商业液冷储能电池一体柜用户手册
评论
0/150
提交评论