--------------python数据分析模块
文章平均质量分 61
有一种宿命叫无能为力
即便梦想依旧遥不可及,我依然矢志不渝的前进
原博客链接:http://blog.csdn.net/wuxiushu
展开
-
python matplotlib 用极坐标绘制球员能力图(综合练习)
使用极坐标来显示球员的能力图#!/usr/bin/python#coding: utf-8import numpy as npimport matplotlib.pyplot as pltfrom matplotlib.font_manager import FontPropertiesplt.style.use("ggplot")font = FontProperti原创 2016-12-06 14:52:26 · 3123 阅读 · 0 评论 -
python pd.crosstab在处理时间序列文本数据的用处
在优矿上的-量化分析师的Python日记中看到一个函数很不错--pd.crosstab 。因为我们平时取到的多股数据可能如以下所示;取两股为例: Sec1, Sec2利用pandas的date_range获得一列时间序列,当然这边价格是简单假设的。[python] view plain copy print?import nu转载 2017-04-10 17:57:34 · 4112 阅读 · 1 评论 -
画直方图(hist)
#!/usr/bin/python#coding: utf-8# 概率分布直方图# 本例是标准正态分布import numpy as npimport matplotlib.pyplot as plt# 设置均值,中心所在点mean = 0# 用于将每个点都扩大响应的倍数sigma = 1# x中的点分布在 mean 旁边,以mean为中点x = mean + sig原创 2016-12-02 15:12:57 · 10592 阅读 · 0 评论 -
利用Python进行数据分析--数据聚合与分组运算
1、quantile计算Series或DataFrame列的样本分位数:[python] view plaincopy>>> import numpy as np >>> import pandas as pd >>> df = pd.DataFrame({'key1':['a', 'a', 'b', 'b', 'a'],转载 2017-04-10 11:30:09 · 1940 阅读 · 0 评论 -
numpy.random.rand使用详解
numpy.random.randnumpy.random.rand(d0, d1, ..., dn)Random values in a given shape.(指定类型的)Create an array of the given shape and populate it with random samples from a uniform distribution over原创 2016-12-06 22:44:03 · 35270 阅读 · 1 评论 -
numpy.linspace使用详解
numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)在指定的间隔内返回均匀间隔的数字。返回num均匀分布的样本,在[start, stop]。这个区间的端点可以任意的被排除在外。Parameters(参数):start : scalar(标量)原创 2016-12-06 22:25:42 · 241701 阅读 · 12 评论 -
函数积分图(综合练习)
难点(综合性问题这是,所以要包含前面学过的很多东西)1. 看文档,找思路2. 坐标轴上面要显示的东西的设置,比如x和y,a和b,y轴的坐标3. 画出函数图像,画阴影部分,注意查找文档,关于多边形的绘制方法4. 画出数学函数, 设置居中显示#!/usr/bin/python#coding: utf-8import numpy as npimport matplotlib.原创 2016-12-05 16:33:19 · 1068 阅读 · 0 评论 -
matplotlib设置中文显示
#!/usr/bin/python#coding: utf-8from matplotlib.font_manager import FontPropertiesimport matplotlib.pyplot as pltfont = FontProperties(fname=r"c:\windows\fonts\simsun.ttc", size=14)plt.xlabel(u"原创 2016-12-06 11:39:42 · 702 阅读 · 0 评论 -
画散点条形图(综合练习)
代码中的相关参数使用的主要是面向对象中的 add_axes 方法,注意三个图形中的坐标进行对应,画出的散点图,在另外两个子图中画出对应的柱状图#!/usr/bin/python#coding: utf-8import numpy as npimport matplotlib.pyplot as pltplt.style.use("ggplot")fig = pl原创 2016-12-06 10:01:02 · 751 阅读 · 0 评论 -
极坐标中绘图(projection参数)
# 在使用的时候一定要注意角度和边的数量一定要相等,不然会出现维度错误# ValueError: x and y must have same first dimension#!/usr/bin/python#coding: utf-8import numpy as npimport matplotlib.pyplot as plt# print plt.style.av原创 2016-12-05 14:50:36 · 6549 阅读 · 0 评论 -
python pandas.DataFrame选取、修改数据最好用.loc,.iloc,.ix
相信很多人像我一样在学习Python,pandas过程中对数据的选取和修改有很大的困惑(也许是深受Matlab)的影响。。。到今天终于完全搞清楚了!!!先手工生出一个数据框吧[python] view plain copy print?import numpy as np import pandas as pd d转载 2017-04-10 17:59:44 · 1106 阅读 · 0 评论 -
从np.random.normal()到正态分布的拟合
先看伟大的高斯分布(Gaussian Distribution)的概率密度函数(probability density function):f(x)=12π−−√σexp(−(x−μ)22σ2)对应于numpy中:numpy.random.normal(loc=0.0, scale=1.0, size=None)11参数的意义为:loc:float转载 2017-04-10 19:40:29 · 2466 阅读 · 0 评论 -
Series 和 DataFrame 中的sort_index 方法
Series 的 sort_index(ascending=True) 方法可以对 index 进行排序操作,ascending 参数用于控制升序或降序,默认为升序。若要按值对 Series 进行排序,当使用 .order(na_last=True, ascending=True, kind='mergesort') 方法,任何缺失值默认都会被放到 Series 的末尾。在 Dat原创 2017-04-24 12:38:08 · 17345 阅读 · 0 评论 -
numpy.random.uniform介绍
numpy.random.uniform介绍:1. 函数原型: numpy.random.uniform(low,high,size)功能:从一个均匀分布[low,high)中随机采样,注意定义域是左闭右开,即包含low,不包含high.参数介绍: low: 采样下界,float类型,默认值为0; high: 采样上界,float类型,默转载 2017-04-22 20:44:28 · 2218 阅读 · 1 评论 -
对numpy对象的两种sort总结
# 直接对对象进行排序,不会产生一个新数组,而是在原数组的基础上进行修改# None : 如果待排序的对象是一个视图的话,则原始数据将会被修改obj.sort()# 这种方式会为原数组创建一个已排序的副本,所以并不会对原数组进行修改np.sort(obj)# 相同之处:两种排序都可以接受一个axis参数,用于对相应的行或者列进行排序# Note : 两个排序方法都不可以被设置为降序,原创 2017-04-22 18:38:17 · 9013 阅读 · 2 评论 -
Numpy中的广播(Broadcasting)
Numpy的Universal functions 中要求输入的数组shape是一致的,当数组的shape不想等的时候,则会使用广播机制,调整数组使得shape一样,满足规则,则可以运算,否则就出错 四条规则如下:All input arrays with ndim smaller than the input array of largest ndim, have 1’s prepe转载 2017-04-21 20:42:40 · 760 阅读 · 0 评论 -
pandas常用函数之date_range
在pandas中有一个非常常用的函数date_range,尤其是在处理时间序列数据时,这个函数的作用就是产生一个DatetimeIndex,就是时间序列数据的索引。这个函数的使用方式就是如下所示:import pandas as pdpd.date_range(......)......具体来看看它的用法:函数原型pandas.date_range(start=No转载 2017-04-17 12:46:44 · 38850 阅读 · 2 评论 -
Python数据分析_Pandas06_窗函数
窗函数(window function)经常用在频域信号分析中。我其实不咋个懂,大概是从无限长的信号中截一段出来,然后把这一段做延拓变成一个虚拟的无限长的信号。用来截取的函数就叫窗函数,窗函数又分很多种,什么矩形窗、三角窗、高斯窗。在scipy.signal中有各种我不懂的实现窗函数的方法。浏览了一下,头疼的紧。那在pandas中也有实现窗函数的方法:rolling()。我呢就不折转载 2017-04-19 17:44:45 · 7596 阅读 · 0 评论 -
pandas 模块学习总结
在pandas中使用Series类的plot画图。如果tz_counts是一个Series类:1.在python画图,需要先导入matplotlib.pyplot:import matplotlib.pyplot as plttz_counts[: 10].plot(kind= 'barh' ,rot=0 )plt.show()2.在ipython画图需要打开pylab模式转载 2017-04-14 15:30:03 · 908 阅读 · 0 评论 -
numpy.random中的shuffle和permutation
numpy.random.shuffle(x) and numpy.random.permutation(x),这两个有什么不同,或者说有什么关系?答: np.random.permutation与np.random.shuffle有两处不同:如果传给permutation一个矩阵,它会返回一个洗牌后的矩阵副本;而shuffle只是对一个矩阵进行洗牌,无返回值。 如果传入一个整数,它会转载 2017-04-14 01:18:05 · 9382 阅读 · 0 评论 -
pandas常用函数之diff
diff函数是用来将数据进行某种移动之后与原数据进行比较得出的差异数据,举个例子,现在有一个DataFrame类型的数据df,如下:indexvalue1A0B1C2D3如果执行:df.diff()则会得到:inde转载 2017-04-10 20:03:43 · 46769 阅读 · 4 评论 -
样式美化(matplotlib.pyplot.style.use)
使用matplotlib自带的几种美化样式,就可以很轻松的对生成的图形进行美化。可以使用matplotlib.pyplot.style.available获取所有的美化样式#!/usr/bin/python#coding: utf-8import numpy as npimport matplotlib.pyplot as plt# 获取所有的自带样式print plt.st原创 2016-12-05 13:59:38 · 27785 阅读 · 2 评论 -
numpy的random模块
随机抽样 (numpy.random)简单的随机数据rand(d0, d1, ..., dn)随机值>>> np.random.rand(3,2)array([[ 0.14022471, 0.96360618], #random [ 0.37601032, 0.25528411], #random [转载 2016-12-05 13:11:56 · 1185 阅读 · 0 评论 -
生成图形(matplotlib.patches)
这里介绍一些简单的使用,更多的请查看官网的链接:链接#!/usr/bin/python#coding: utf-8import numpy as npimport matplotlib.pyplot as pltimport matplotlib.patches as mpatchesfig, ax = plt.subplots()# 圆的圆心坐标xy1 = np.arra原创 2016-12-05 00:39:41 · 14111 阅读 · 0 评论 -
画散点图(scatter)
散点图一般包括正相关,负相关,不相关三种情况不相关#!/usr/bin/python#coding: utf-8# 不相关import matplotlib.pyplot as pltimport numpy as np# # 产生100到200的10个随机整数# height = np.random.randint(100, 200, 10)# width =原创 2016-12-01 23:27:47 · 2316 阅读 · 0 评论 -
画饼状图(pie)
使用pie绘制饼状图#!/usr/bin/python#coding: utf-8# 饼状图: 显示一个系列中各项的大小以及各项所占总和的比例# 饼状图中的数据点显示为整个饼状图的百分比import numpy as npimport matplotlib.pyplot as pltlabels = ["A", "B", "C", "D"]facts = [25, 40,原创 2016-12-02 15:42:12 · 1857 阅读 · 0 评论 -
画箱形图(boxplot)
箱形图又称为盒须图,盒式图或箱线图。是一种用作显示一组数据分散情况资料的统计图。#!/usr/bin/python#coding: utf-8import numpy as npimport matplotlib.pyplot as pltnp.random.seed(100)# 生成一组随机数,数量为1000data = np.random.normal(size = (1原创 2016-12-02 16:32:31 · 26920 阅读 · 0 评论 -
画子图(add_subplot & subplot)
Matplotlib对象简介 FigureCanvas 画布 Figure 图 Axes 坐标轴(实际画图的地方)注意,pyplot的方式中plt.subplot()参数和面向对象中的add_subplot()参数和含义都相同。使用面向对象的方式#!/usr/bin/python#coding:原创 2016-12-02 21:49:46 · 72141 阅读 · 5 评论 -
画多图(figure)
#!/usr/bin/python#coding: utf-8# 创建两个图(figure),每个图中都存在两个子图(add_subplot),一个是一行两列的,一个是两行一列的import numpy as np import matplotlib.pyplot as plt x = np.arange(1, 100)fig1 = plt.figure()ax1 = fig原创 2016-12-02 23:22:43 · 11415 阅读 · 0 评论 -
显示网格(grid)
使用pyplot的方式#!/usr/bin/python#coding: utf-8# 有交互效果,可以在交互式编译器中观察每一步的执行过程import numpy as np import matplotlib.pyplot as plt x = np.arange(0, 21)plt.plot(x, x * 2)# True 显示网格# linestyle 设置线原创 2016-12-03 00:35:26 · 31236 阅读 · 0 评论 -
matplotlib的常用的两种方式以及pylab
pylab不推荐使用的原因:pylab更接近于MATLAB,这是毋庸置疑的,但是使用pylab会逐渐背离matplotlib的学习,这与初衷想反,当然,还有其他的原因,没有研究。三种方式的实现代码pyplot的方式#!/usr/bin/python#coding: utf-8import numpy as npimport matplotlib.pyplot a原创 2016-12-02 20:39:54 · 9860 阅读 · 0 评论 -
用python绘制图形的一些使用技巧
1.颜色:八种内建的颜色缩写 b : blue g : green r : red c : cyan m : magenta y : yellow k : block w : white其他的颜色表示方法(1).灰色阴影(通过数值来设置)(2).html中最常见的十六进制表示(3).RGB元原创 2016-12-02 17:15:48 · 3711 阅读 · 0 评论 -
python 正态分布随机数 numpy.random.randn 使用小技
格式:numpy.random.randn(d0, d1, ..., dn)Generate d0 X d1 X ... X dn dimensions normal Gaussian distribution of mean 0 and variance 1 .同时,与np.random.standard_norma( ( d0, d1, ..., dn ))完全转载 2016-12-02 15:03:09 · 23942 阅读 · 0 评论 -
画折线或者线段(plot)
#!/usr/bin/python#coding: utf-8import numpy as npimport matplotlib.pyplot as plt# linspace 用于生成等区间的一组数# 本例中生成从 -10 到 10 的5个数x = np.linspace(-10, 10, 5)y = x ** 2# 使用 plot 绘制折线图# linestyle原创 2016-12-01 23:54:04 · 4608 阅读 · 0 评论 -
画条形图(bar)
条形图的绘制通过pyplot中的bar或者是barh来实现。bar默认是绘制竖直方向的条形图,也可以通过设置 orientation = "horizontal" 参数来绘制水平方向的。barn就是绘制水平方向的条形图绘制简单的条形图#!/usr/bin/python#coding: utf-8import numpy as npimport matplotlib.原创 2016-12-02 12:46:52 · 2671 阅读 · 0 评论 -
颜色填充(fill & fill_between)
先看一下填充时要使用的两个函数代码中要用到 np.linspace(),相关的链接:链接#!/usr/bin/python#coding: utf-8import numpy as npimport matplotlib.pyplot as pltx = np.linspace(0, 5 * np.pi, 1000)y1 = np.sin(x)y2 = np.sin(2原创 2016-12-04 23:57:20 · 31539 阅读 · 1 评论 -
画数学公式的简单使用
练习了一些数学公式的简单画法,如果要了解更多,官网链接#!/usr/bin/python#coding: utf-8import numpy as npimport matplotlib.pyplot as pltfig = plt.figure()ax = fig.add_subplot(111)ax.set_xlim([1, 10])ax.set_ylim([1, 10原创 2016-12-04 21:18:59 · 1370 阅读 · 0 评论 -
图形中添加纯文本注释(text)
在图形中,通过text添加纯文本的注释text所有相关的参数:官网链接#!/usr/bin/python#coding: utf-8import numpy as npimport matplotlib.pyplot as pltx = np.arange(-10, 11, 1)y = x ** 2plt.plot(x, y)# 第一个参数是x轴坐标原创 2016-12-04 17:23:52 · 28048 阅读 · 2 评论 -
图形中添加注释(annotate)
在图形中添加注释,主要是起到提示作用#!/usr/bin/python#coding: utf-8import numpy as npimport matplotlib.pyplot as pltx = np.arange(-10, 11, 1)y = x * xplt.plot(x, y)# 添加注释# 第一个参数是注释的内容# xy设置箭头尖的坐标# x原创 2016-12-04 15:43:40 · 24949 阅读 · 1 评论 -
设置双坐标轴(twinx & twiny)
使用twinx是添加y轴的坐标轴使用twiny是添加x轴的坐标轴添加好坐标轴以后,再对新添加的坐标轴进行画图#!/usr/bin/python#coding: utf-8import numpy as npimport matplotlib.pyplot as pltx = np.arange(1, 20, 1)y1 = x * xy2 = np.lo原创 2016-12-04 15:00:01 · 15777 阅读 · 0 评论