#2018-03-23 18:56:38 March Friday the 12 week, the 082 day SZ SSMR
https://blog.csdn.net/eastmount/article/details/60675865
python数据挖掘学习笔记】十.Pandas、Matplotlib、PCA绘图实用代码补充
一. Pandas获取数据集并显示采用Pandas对2002年~2014年的商品房价数据集作时间序列分析,从中抽取几个城市与贵阳做对比,并对贵阳商品房作出分析。import pandas as pd
#pandas直接读取数据显示绘制图形,index_col获取索引。
#ValueError: Index year invalid
data = pd.read_csv("room32.csv",index_col='year') #index_col用作行索引的列名
#显示前6行数据
print(data.shape)
print(data.head(6))import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['simHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False   #用来正常显示负号
data.plot()
#plt.savefig(u'时序图.png', dpi=500)
plt.show()二. Pandas获取某列数据绘制柱状图import pandas as pd
#ValueError: Index year invaliddata = pd.read_csv("room32.csv",index_col='year') #index_col用作行索引的列名
#显示前6行数据
print(data.shape)
print(data.head(6))import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['simHei'] #用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False   #用来正常显示负号
data.plot()
plt.savefig(u'时序图.png', dpi=500)
plt.show()#获取贵阳数据集并绘图
gy = data['Guiyang']
print (u'输出贵阳数据')
print (gy)
gy.plot()
plt.show()通过这个数据集调用bar函数可以绘制对应的柱状图,如下所示,需要注意x轴位年份,获取两列数据进行绘图。import pandas as pd
#ValueError: Index year invaliddata = pd.read_csv("room32.csv",index_col='year') #index_col用作行索引的列名
#显示前6行数据
print(data.shape)
print(data.head(6))
#获取贵阳数据集并绘图gy = data['Guiyang']
print (u'输出贵阳数据')
print (gy)import numpy as np
x = ['2002','2003','2004','2005','2006','2007','2008','2009','2010','2011','2012','2013','2014']
N = 13
ind = np.arange(N)  #赋值0-13
width=0.35
plt.bar(ind, gy, width, color='r', label='sum num')
#设置底部名称
plt.xticks(ind+width/2, x, rotation=40) #旋转40度
plt.title('The price of Guiyang')
plt.xlabel('year')
plt.ylabel('price')
#plt.savefig('guiyang.png',dpi=400)
plt.show()
补充一段hist绘制柱状图的代码:
import numpy as np
import pylab as pl
# make an array of random numbers with a gaussian distribution with
# mean = 5.0
# rms = 3.0
# number of points = 1000
data = np.random.normal(5.0, 3.0, 1000)
# make a histogram of the data array
pl.hist(data, histtype='stepfilled') #去掉黑色轮廓
# make plot labels
pl.xlabel('data')
pl.show()
三. Python绘制时间序列-自相关图import pandas as pd
#ValueError: Index year invaliddata = pd.read_csv("room32.csv",index_col='year')
#显示前6行数据
print(data.shape)
print(data.head(6))import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['simHei']
plt.rcParams['axes.unicode_minus'] = False
data.plot()
#plt.savefig(u'时序图.png', dpi=500)
plt.show()from statsmodels.graphics.tsaplots import plot_acf
gy = data['Guiyang']
print (gy)
plot_acf(gy).show()
plt.savefig(u'贵阳自相关图',dpi=300)from statsmodels.tsa.stattools import adfuller as ADF
print ('ADF:',ADF(gy))四. 聚类分析大连交易所数据集
sklearn自带一些数据集以及UCI官网提供大量的数据集。这里讲述一个大连商品交易所的数据集。
地址:http://www.dce.com.cn/dalianshangpin/xqsj/lssj/index.html##第一部分:导入数据集
import pandas as pd
#pandas.errors.ParserError: Error tokenizing data. C error: Expected 1 fields in line 3, saw 3Coke1 =pd.read_csv("coal35.csv")
print (Coke1 [:4])#第二部分:聚类
from sklearn.cluster import KMeans
clf=KMeans(n_clusters=3)
pre=clf.fit_predict(Coke1)
print (pre[:4])#第三部分:降维
from sklearn.decomposition import PCA
pca=PCA(n_components=2)
newData=pca.fit_transform(Coke1)
print (newData[:4])
x1=[n[0] for n in newData]
x2=[n[1] for n in newData]#第四部分:用matplotlib包画图
import matplotlib.pyplot as plt
plt.title
plt.xlabel("x feature")
plt.ylabel("y feature")
plt.scatter(x1,x2,c=pre, marker='x')
plt.savefig("bankloan.png",dpi=400)
plt.show()五. PCA降维及绘图代码from numpy import *def loadDataSet(fileName,delim='\t'):fr=open(fileName)stringArr=[line.strip().split(delim) for line in fr.readlines()]datArr=[map(float,line) for line in stringArr]return mat(datArr)def pca(dataMat,topNfeat=9999999):#TypeError: unsupported operand type(s) for /: 'map' and 'int'meanVals=mean(dataMat,axis=0)meanRemoved=dataMat-meanValscovMat=cov(meanRemoved,rowvar=0)eigVals,eigVets=linalg.eig(mat(covMat))eigValInd=argsort(eigVals)eigValInd=eigValInd[:-(topNfeat+1):-1]redEigVects=eigVets[:,eigValInd]#print meanRemoved#print redEigVectslowDDatMat=meanRemoved*redEigVectsreconMat=(lowDDatMat*redEigVects.T)+meanValsreturn lowDDatMat,reconMat
dataMat=loadDataSet('41.txt')
lowDMat,reconMat=pca(dataMat,1)def plotPCA(dataMat,reconMat):import matplotlibimport matplotlib.pyplot as pltdatArr=array(dataMat)reconArr=array(reconMat)n1=shape(datArr)[0]n2=shape(reconArr)[0]xcord1=[];ycord1=[]xcord2=[];ycord2=[]for i in range(n1):xcord1.append(datArr[i,0]);ycord1.append(datArr[i,1])for i in range(n2):xcord2.append(reconArr[i,0]);ycord2.append(reconArr[i,1])fig=plt.figure()ax=fig.add_subplot(111)ax.scatter(xcord1,ycord1,s=90,c='red',marker='^')ax.scatter(xcord2,ycord2,s=50,c='yellow',marker='o')plt.title('PCA')plt.savefig('ccc.png',dpi=400)plt.show()
plotPCA(dataMat,reconMat)


python数据挖掘学习笔记】十.Pandas、Matplotlib、PCA绘图实用代码补充相关推荐

  1. python数据挖掘学习】十五.Matplotlib调用imshow()函数绘制热图

    python数据挖掘学习]十五.Matplotlib调用imshow()函数绘制热图 #2018-03-28 14:47:19 March Wednesday the 13 week, the 087 ...

  2. python数据挖掘课程 十.Pandas、Matplotlib、PCA绘图实用代码补充

    这篇文章主要是最近整理<数据挖掘与分析>课程中的作品及课件过程中,收集了几段比较好的代码供大家学习.同时,做数据分析到后面,除非是研究算法创新的,否则越来越觉得数据非常重要,才是有价值的东 ...

  3. 【python数据挖掘课程】十.Pandas、Matplotlib、PCA绘图实用代码补充

    这篇文章主要是最近整理<数据挖掘与分析>课程中的作品及课件过程中,收集了几段比较好的代码供大家学习.同时,做数据分析到后面,除非是研究算法创新的,否则越来越觉得数据非常重要,才是有价值的东 ...

  4. python数据挖掘学习笔记】十九.鸢尾花数据集可视化、线性回归、决策树花样分析

    #2018-04-05 16:57:26 April Thursday the 14 week, the 095 day SZ SSMR python数据挖掘学习笔记]十九.鸢尾花数据集可视化.线性回 ...

  5. python数据挖掘学习笔记】十四.Scipy调用curve_fit实现曲线拟合

    #2018-03-28 10:02:08 March Wednesday the 13 week, the 087 day SZ SSMR python数据挖掘学习笔记]十四.Scipy调用curve ...

  6. python数据挖掘学习笔记】十六.逻辑回归LogisticRegression分析鸢尾花数据

    但是很多时候数据是非线性的,所以这篇文章主要讲述逻辑回归及Sklearn机器学习包中的LogisticRegression算法 #2018-03-28 16:57:56 March Wednesday ...

  7. Python数据挖掘学习笔记】九.回归模型LinearRegression简单分析氧化物数据

    #2018-03-23 16:26:20 March Friday the 12 week, the 082 day SZ SSMR [Python数据挖掘学习笔记]九.回归模型LinearRegre ...

  8. python数据挖掘学习笔记】十三.WordCloud词云配置过程及词频分析

    #2018-03-28 09:59:40 March Wednesday the 13 week, the 087 day SZ SSMR 11,12因为涉及到数据库被我暂时放弃了 python数据挖 ...

  9. 【python数据挖掘课程】十五.Matplotlib调用imshow()函数绘制热图

    前面系列文章讲过数据挖掘的各种知识,最近在研究人类时空动力学分析和幂率定律,发现在人类兴趣转移模型中,可以通过热图(斑图)来进行描述的兴趣转移,如下图所示.下一篇文章将简单普及人类动力学相关知识研究. ...

最新文章

  1. 【学时总结】◆学时·VIII◆ 树形DP
  2. [转] Java多线程发展简史
  3. 使用ABAP代码返回S/4HANA Material上维护的Attachment明细
  4. Oracle online系列(上):Online Move Datafile
  5. 兰州理工大学linux试题,兰州理工大学学期《电子技术》试题.doc
  6. sklearn相关积累
  7. SpringMVC多种参数接收
  8. pyqt5——控件1
  9. windows10计算机用户密码,忘记Windows 10系统密码?教你重置
  10. 在浏览器中进行深度学习:TensorFlow.js (二)第一个模型,线性回归
  11. Angular - - ng-focus、ng-blur
  12. 计算机无法预览文件,win10系统百度网盘文件无法预览的解决方法
  13. 微信小程序 【给图片加上删除图标】
  14. 最新席瓦莱恩服务器人口比例,2021魔兽世界怀旧服3月人口普查_最新怀旧服3月人口普查数据一览_3DM网游...
  15. 制作QQ微信支付宝三合一收款码
  16. 防火墙、waf、ips和ddos的部署
  17. 数据结构之2-3-4树与2-3树
  18. Python3爬取企查查网站的企业年表并存入MySQL
  19. windows 防火墙日志_如何使用Windows防火墙日志跟踪防火墙活动
  20. 教育培训行业市场营销推广方案分享

热门文章

  1. RPC与RMI的区别
  2. 【UOJ 53】线段树区间修改
  3. python3使用schedule
  4. abi-api, arm target triplet https://en.wikipedia.org/wiki/ARM_architecture
  5. 隐藏ribbon按钮
  6. Hudson Jenkins 文档一篇[转记]
  7. VB.net SP1 的兼容性问题
  8. (转)淘淘商城系列——实现图片上传功能
  9. (转)使用Spring的注解方式实现AOP入门
  10. World Wind Java开发之十五——加载三维模型(转)