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

这篇文章主要是最近整理《数据挖掘与分析》课程中的作品及课件过程中,收集了几段比较好的代码供大家学习。同时,做数据分析到后面,除非是研究算法创新的,否则越来越觉得数据非常重要,才是有价值的东西。后面的课程会慢慢讲解Python应用在Hadoop和Spark中,以及networkx数据科学等知识。
如果文章中存在错误或不足之处,还请海涵~希望文章对你有所帮助。


一. Pandas获取数据集并显示

采用Pandas对2002年~2014年的商品房价数据集作时间序列分析,从中抽取几个城市与贵阳做对比,并对贵阳商品房作出分析。

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

数据集位32.csv,具体值如下:(读者可直接复制)

[python] view plain copy
  1. year    Beijing Chongqing   Shenzhen    Guiyang Kunming Shanghai    Wuhai   Changsha  
  2. 2002    4764.00     1556.00     5802.00     1643.00     2276.00     4134.00     1928.00     1802.00   
  3. 2003    4737.00     1596.00     6256.00     1949.00     2233.00     5118.00     2072.00     2040.00   
  4. 2004    5020.93     1766.24     6756.24     1801.68     2473.78     5855.00     2516.32     2039.09   
  5. 2005    6788.09     2134.99     7582.27     2168.90     2639.72     6842.00     3061.77     2313.73   
  6. 2006    8279.51     2269.21     9385.34     2372.66     2903.32     7196.00     3689.64     2644.15   
  7. 2007    11553.26    2722.58     14049.69    2901.63     3108.12     8361.00     4664.03     3304.74   
  8. 2008    12418.00    2785.00     12665.00    3149.00     3750.00     8195.00     4781.00     3288.00   
  9. 2009    13799.00    3442.00     14615.00    3762.00     3807.00     12840.00    5329.00     3648.00   
  10. 2010    17782.00    4281.00     19170.00    4410.00     3660.00     14464.00    5746.00     4418.00   
  11. 2011    16851.95    4733.84     21350.13    5069.52     4715.23     14603.24    7192.90     5862.39   
  12. 2012    17021.63    5079.93     19589.82    4846.14     5744.68     14061.37    7344.05     6100.87   
  13. 2013    18553.00    5569.00     24402.00    5025.00     5795.00     16420.00    7717.00     6292.00   
  14. 2014    18833.00    5519.00     24723.00    5608.00     6384.00     16787.00    7951.00     6116.00   

绘制对比各个城市的商品房价数据代码如下所示:

[python] view plain copy
  1. # -*- coding: utf-8 -*-  
  2. """ 
  3. Created on Mon Mar 06 10:55:17 2017 
  4.  
  5. @author: eastmount 
  6. """  
  7.   
  8. import pandas as pd  
  9. data = pd.read_csv("32.csv",index_col='year'#index_col用作行索引的列名   
  10. #显示前6行数据   
  11. print(data.shape)    
  12. print(data.head(6))  
  13.   
  14. import matplotlib.pyplot as plt  
  15. plt.rcParams['font.sans-serif'] = ['simHei'#用来正常显示中文标签  
  16. plt.rcParams['axes.unicode_minus'] = False   #用来正常显示负号  
  17. data.plot()  
  18. plt.savefig(u'时序图.png', dpi=500)  
  19. plt.show()  

输出如下所示:

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

重点知识:
1、plt.rcParams显示中文及负号;
2、plt.savefig保存图片至本地;
3、pandas直接读取数据显示绘制图形,index_col获取索引。



二. Pandas获取某列数据绘制柱状图

接着上面的实验,我们需要获取贵阳那列数据,再绘制相关图形。

[python] view plain copy
  1. # -*- coding: utf-8 -*-  
  2. """ 
  3. Created on Mon Mar 06 10:55:17 2017 
  4.  
  5. @author: eastmount 
  6. """  
  7.   
  8. import pandas as pd  
  9. data = pd.read_csv("32.csv",index_col='year'#index_col用作行索引的列名   
  10. #显示前6行数据   
  11. print(data.shape)    
  12. print(data.head(6))  
  13.   
  14. import matplotlib.pyplot as plt  
  15. plt.rcParams['font.sans-serif'] = ['simHei'#用来正常显示中文标签  
  16. plt.rcParams['axes.unicode_minus'] = False   #用来正常显示负号  
  17. data.plot()  
  18. plt.savefig(u'时序图.png', dpi=500)  
  19. plt.show()  
  20.   
  21. #获取贵阳数据集并绘图  
  22. gy = data['Guiyang']  
  23. print u'输出贵阳数据'  
  24. print gy  
  25. gy.plot()  
  26. plt.show()  
通过data['Guiyang']获取某列数据,然后再进行绘制如下所示:

【python数据挖掘课程】十.Pandas、Matplotlib、PCA绘图实用代码补充
通过这个数据集调用bar函数可以绘制对应的柱状图,如下所示,需要注意x轴位年份,获取两列数据进行绘图。

[python] view plain copy
  1. # -*- coding: utf-8 -*-  
  2. """ 
  3. Created on Mon Mar 06 10:55:17 2017 
  4.  
  5. @author: eastmount 
  6. """  
  7.   
  8. import pandas as pd  
  9. data = pd.read_csv("32.csv",index_col='year'#index_col用作行索引的列名   
  10. #显示前6行数据   
  11. print(data.shape)    
  12. print(data.head(6))  
  13. #获取贵阳数据集并绘图  
  14. gy = data['Guiyang']  
  15. print u'输出贵阳数据'  
  16. print gy  
  17.   
  18. import numpy as np  
  19. x = ['2002','2003','2004','2005','2006','2007','2008',  
  20.      '2009','2010','2011','2012','2013','2014']  
  21. N = 13  
  22. ind = np.arange(N)  #赋值0-13  
  23. width=0.35  
  24. plt.bar(ind, gy, width, color='r', label='sum num')   
  25. #设置底部名称    
  26. plt.xticks(ind+width/2, x, rotation=40#旋转40度    
  27. plt.title('The price of Guiyang')    
  28. plt.xlabel('year')    
  29. plt.ylabel('price')    
  30. plt.savefig('guiyang.png',dpi=400)    
  31. plt.show()    
输出如下图所示:

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

补充一段hist绘制柱状图的代码:

[python] view plain copy
  1. import numpy as np  
  2. import pylab as pl  
  3. # make an array of random numbers with a gaussian distribution with  
  4. # mean = 5.0  
  5. # rms = 3.0  
  6. # number of points = 1000  
  7. data = np.random.normal(5.03.01000)  
  8. # make a histogram of the data array  
  9. pl.hist(data, histtype='stepfilled'#去掉黑色轮廓  
  10. # make plot labels  
  11. pl.xlabel('data')   
  12. pl.show()  
输出如下图所示:

【python数据挖掘课程】十.Pandas、Matplotlib、PCA绘图实用代码补充
推荐文章:http://www.cnblogs.com/jasonfreak/p/5441512.html



三. Python绘制时间序列-自相关图


核心代码如下所示:
[python] view plain copy
  1. # -*- coding: utf-8 -*-  
  2. """ 
  3. Created on Mon Mar 06 10:55:17 2017 
  4.  
  5. @author: yxz15 
  6. """  
  7.   
  8. import pandas as pd  
  9. data = pd.read_csv("32.csv",index_col='year')  
  10. #显示前6行数据    
  11. print(data.shape)    
  12. print(data.head(6))  
  13.   
  14. import matplotlib.pyplot as plt  
  15. plt.rcParams['font.sans-serif'] = ['simHei']  
  16. plt.rcParams['axes.unicode_minus'] = False  
  17. data.plot()  
  18. plt.savefig(u'时序图.png', dpi=500)  
  19. plt.show()  
  20.   
  21. from statsmodels.graphics.tsaplots import plot_acf  
  22. gy = data['Guiyang']  
  23. print gy  
  24. plot_acf(gy).show()  
  25. plt.savefig(u'贵阳自相关图',dpi=300)  
  26.   
  27. from statsmodels.tsa.stattools import adfuller as ADF  
  28. print 'ADF:',ADF(gy)  
输出结果如下所示:
【python数据挖掘课程】十.Pandas、Matplotlib、PCA绘图实用代码补充


时间序列相关文章推荐:
        python时间序列分析
        个股与指数的回归分析(python)
        Python_Statsmodels包_时间序列分析_ARIMA模型


四. 聚类分析大连交易所数据集

这部分主要提供一个网址给大家下载数据集,前面文章说过sklearn自带一些数据集以及UCI官网提供大量的数据集。这里讲述一个大连商品交易所的数据集。
地址:http://www.dce.com.cn/dalianshangpin/xqsj/lssj/index.html#

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

比如下载"焦炭"数据集,命名为"35.csv",在对其进行聚类分析。

【python数据挖掘课程】十.Pandas、Matplotlib、PCA绘图实用代码补充
代码如下:
[python] view plain copy
  1. # -*- coding: utf-8 -*-  
  2. """ 
  3. Created on Mon Mar 06 10:19:15 2017 
  4.  
  5. @author: yxz15 
  6. """  
  7.   
  8. #第一部分:导入数据集  
  9. import pandas as pd  
  10. Coke1 =pd.read_csv("35.csv")  
  11. print Coke1 [:4]  
  12.   
  13.   
  14. #第二部分:聚类  
  15. from sklearn.cluster import KMeans  
  16. clf=KMeans(n_clusters=3)  
  17. pre=clf.fit_predict(Coke1)  
  18. print pre[:4]  
  19.   
  20. #第三部分:降维  
  21. from sklearn.decomposition import PCA  
  22. pca=PCA(n_components=2)  
  23. newData=pca.fit_transform(Coke1)  
  24. print newData[:4]  
  25. x1=[n[0for n in newData]  
  26. x2=[n[1for n in newData]  
  27.   
  28.   
  29. #第四部分:用matplotlib包画图  
  30. import matplotlib.pyplot as plt  
  31. plt.title  
  32. plt.xlabel("x feature")  
  33. plt.ylabel("y feature")  
  34. plt.scatter(x1,x2,c=pre, marker='x')  
  35. plt.savefig("bankloan.png",dpi=400)  
  36. plt.show()  
输出如下图所示:
【python数据挖掘课程】十.Pandas、Matplotlib、PCA绘图实用代码补充



五. PCA降维及绘图代码

PCA降维绘图参考这篇博客。
http://blog.csdn.net/xiaolewennofollow/article/details/46127485
代码如下:

[python] view plain copy
  1. # -*- coding: utf-8 -*-  
  2. """ 
  3. Created on Mon Mar 06 21:47:46 2017 
  4.  
  5. @author: yxz 
  6. """  
  7.   
  8. from numpy import *  
  9.   
  10. def loadDataSet(fileName,delim='\t'):  
  11.     fr=open(fileName)  
  12.     stringArr=[line.strip().split(delim) for line in fr.readlines()]  
  13.     datArr=[map(float,line) for line in stringArr]  
  14.     return mat(datArr)  
  15.   
  16. def pca(dataMat,topNfeat=9999999):  
  17.     meanVals=mean(dataMat,axis=0)  
  18.     meanRemoved=dataMat-meanVals  
  19.     covMat=cov(meanRemoved,rowvar=0)  
  20.     eigVals,eigVets=linalg.eig(mat(covMat))  
  21.     eigValInd=argsort(eigVals)  
  22.     eigValInd=eigValInd[:-(topNfeat+1):-1]  
  23.     redEigVects=eigVets[:,eigValInd]  
  24.     print meanRemoved  
  25.     print redEigVects  
  26.     lowDDatMat=meanRemoved*redEigVects  
  27.     reconMat=(lowDDatMat*redEigVects.T)+meanVals  
  28.     return lowDDatMat,reconMat  
  29. dataMat=loadDataSet('41.txt')  
  30. lowDMat,reconMat=pca(dataMat,1)  
  31.   
  32. def plotPCA(dataMat,reconMat):  
  33.     import matplotlib  
  34.     import matplotlib.pyplot as plt  
  35.     datArr=array(dataMat)  
  36.     reconArr=array(reconMat)  
  37.     n1=shape(datArr)[0]  
  38.     n2=shape(reconArr)[0]  
  39.     xcord1=[];ycord1=[]  
  40.     xcord2=[];ycord2=[]  
  41.     for i in range(n1):  
  42.         xcord1.append(datArr[i,0]);ycord1.append(datArr[i,1])  
  43.     for i in range(n2):  
  44.         xcord2.append(reconArr[i,0]);ycord2.append(reconArr[i,1])  
  45.     fig=plt.figure()  
  46.     ax=fig.add_subplot(111)  
  47.     ax.scatter(xcord1,ycord1,s=90,c='red',marker='^')  
  48.     ax.scatter(xcord2,ycord2,s=50,c='yellow',marker='o')  
  49.     plt.title('PCA')  
  50.     plt.savefig('ccc.png',dpi=400)  
  51.     plt.show()  
  52. plotPCA(dataMat,reconMat)  
输出结果如下图所示:
【python数据挖掘课程】十.Pandas、Matplotlib、PCA绘图实用代码补充
采用PCA方法对数据集进行降维操作,即将红色三角形数据降维至黄色直线上,一个平面降低成一条直线。PCA的本质就是对角化协方差矩阵,对一个n*n的对称矩阵进行分解,然后把矩阵投影到这N个基上。
数据集为41.txt,值如下:

[python] view plain copy
  1. 61.5    55  
  2. 59.8    61  
  3. 56.9    65  
  4. 62.4    58  
  5. 63.3    58  
  6. 62.8    57  
  7. 62.3    57  
  8. 61.9    55  
  9. 65.1    61  
  10. 59.4    61  
  11. 64  55  
  12. 62.8    56  
  13. 60.4    61  
  14. 62.2    54  
  15. 60.2    62  
  16. 60.9    58  
  17. 62  54  
  18. 63.4    54  
  19. 63.8    56  
  20. 62.7    59  
  21. 63.3    56  
  22. 63.8    55  
  23. 61  57  
  24. 59.4    62  
  25. 58.1    62  
  26. 60.4    58  
  27. 62.5    57  
  28. 62.2    57  
  29. 60.5    61  
  30. 60.9    57  
  31. 60  57  
  32. 59.8    57  
  33. 60.7    59  
  34. 59.5    58  
  35. 61.9    58  
  36. 58.2    59  
  37. 64.1    59  
  38. 64  54  
  39. 60.8    59  
  40. 61.8    55  
  41. 61.2    56  
  42. 61.1    56  
  43. 65.2    56  
  44. 58.4    63  
  45. 63.1    56  
  46. 62.4    58  
  47. 61.8    55  
  48. 63.8    56  
  49. 63.3    60  
  50. 60.7    60  
  51. 60.9    61  
  52. 61.9    54  
  53. 60.9    55  
  54. 61.6    58  
  55. 59.3    62  
  56. 61  59  
  57. 59.3    61  
  58. 62.6    57  
  59. 63  57  
  60. 63.2    55  
  61. 60.9    57  
  62. 62.6    59  
  63. 62.5    57  
  64. 62.1    56  
  65. 61.5    59  
  66. 61.4    56  
  67. 62  55.3  
  68. 63.3    57  
  69. 61.8    58  
  70. 60.7    58  
  71. 61.5    60  
  72. 63.1    56  
  73. 62.9    59  
  74. 62.5    57  
  75. 63.7    57  
  76. 59.2    60  
  77. 59.9    58  
  78. 62.4    54  
  79. 62.8    60  
  80. 62.6    59  
  81. 63.4    59  
  82. 62.1    60  
  83. 62.9    58  
  84. 61.6    56  
  85. 57.9    60  
  86. 62.3    59  
  87. 61.2    58  
  88. 60.8    59  
  89. 60.7    58  
  90. 62.9    58  
  91. 62.5    57  
  92. 55.1    69  
  93. 61.6    56  
  94. 62.4    57  
  95. 63.8    56  
  96. 57.5    58  
  97. 59.4    62  
  98. 66.3    62  
  99. 61.6    59  
  100. 61.5    58  
  101. 63.2    56  
  102. 59.9    54  
  103. 61.6    55  
  104. 61.7    58  
  105. 62.9    56  
  106. 62.2    55  
  107. 63  59  
  108. 62.3    55  
  109. 58.8    57  
  110. 62  55  
  111. 61.4    57  
  112. 62.2    56  
  113. 63  58  
  114. 62.2    59  
  115. 62.6    56  
  116. 62.7    53  
  117. 61.7    58  
  118. 62.4    54  
  119. 60.7    58  
  120. 59.9    59  
  121. 62.3    56  
  122. 62.3    54  
  123. 61.7    63  
  124. 64.5    57  
  125. 65.3    55  
  126. 61.6    60  
  127. 61.4    56  
  128. 59.6    57  
  129. 64.4    57  
  130. 65.7    60  
  131. 62  56  
  132. 63.6    58  
  133. 61.9    59  
  134. 62.6    60  
  135. 61.3    60  
  136. 60.9    60  
  137. 60.1    62  
  138. 61.8    59  
  139. 61.2    57  
  140. 61.9    56  
  141. 60.9    57  
  142. 59.8    56  
  143. 61.8    55  
  144. 60  57  
  145. 61.6    55  
  146. 62.1    64  
  147. 63.3    59  
  148. 60.2    56  
  149. 61.1    58  
  150. 60.9    57  
  151. 61.7    59  
  152. 61.3    56  
  153. 62.5    60  
  154. 61.4    59  
  155. 62.9    57  
  156. 62.4    57  
  157. 60.7    56  
  158. 60.7    58  
  159. 61.5    58  
  160. 59.9    57  
  161. 59.2    59  
  162. 60.3    56  
  163. 61.7    60  
  164. 61.9    57  
  165. 61.9    55  
  166. 60.4    59  
  167. 61  57  
  168. 61.5    55  
  169. 61.7    56  
  170. 59.2    61  
  171. 61.3    56  
  172. 58  62  
  173. 60.2    61  
  174. 61.7    55  
  175. 62.7    55  
  176. 64.6    54  
  177. 61.3    61  
  178. 63.7    56.4  
  179. 62.7    58  
  180. 62.2    57  
  181. 61.6    56  
  182. 61.5    57  
  183. 61.8    56  
  184. 60.7    56  
  185. 59.7    60.5  
  186. 60.5    56  
  187. 62.7    58  
  188. 62.1    58  
  189. 62.8    57  
  190. 63.8    58  
  191. 57.8    60  
  192. 62.1    55  
  193. 61.1    60  
  194. 60  59  
  195. 61.2    57  
  196. 62.7    59  
  197. 61  57  
  198. 61  58  
  199. 61.4    57  
  200. 61.8    61  
  201. 59.9    63  
  202. 61.3    58  
  203. 60.5    58  
  204. 64.1    59  
  205. 67.9    60  
  206. 62.4    58  
  207. 63.2    60  
  208. 61.3    55  
  209. 60.8    56  
  210. 61.7    56  
  211. 63.6    57  
  212. 61.2    58  
  213. 62.1    54  
  214. 61.5    55  
  215. 61.4    59  
  216. 61.8    60  
  217. 62.2    56  
  218. 61.2    56  
  219. 60.6    63  
  220. 57.5    64  
  221. 61.3    56  
  222. 57.2    62  
  223. 62.9    60  
  224. 63.1    58  
  225. 60.8    57  
  226. 62.7    59  
  227. 62.8    60  
  228. 55.1    67  
  229. 61.4    59  
  230. 62.2    55  
  231. 63  54  
  232. 63.7    56  
  233. 63.6    58  
  234. 62  57  
  235. 61.5    56  
  236. 60.5    60  
  237. 61.1    60  
  238. 61.8    56  
  239. 63.3    56  
  240. 59.4    64  
  241. 62.5    55  
  242. 64.5    58  
  243. 62.7    59  
  244. 64.2    52  
  245. 63.7    54  
  246. 60.4    58  
  247. 61.8    58  
  248. 63.2    56  
  249. 61.6    56  
  250. 61.6    56  
  251. 60.9    57  
  252. 61  61  
  253. 62.1    57  
  254. 60.9    60  
  255. 61.3    60  
  256. 65.8    59  
  257. 61.3    56  
  258. 58.8    59  
  259. 62.3    55  
  260. 60.1    62  
  261. 61.8    59  
  262. 63.6    55.8  
  263. 62.2    56  
  264. 59.2    59  
  265. 61.8    59  
  266. 61.3    55  
  267. 62.1    60  
  268. 60.7    60  
  269. 59.6    57  
  270. 62.2    56  
  271. 60.6    57  
  272. 62.9    57  
  273. 64.1    55  
  274. 61.3    56  
  275. 62.7    55  
  276. 63.2    56  
  277. 60.7    56  
  278. 61.9    60  
  279. 62.6    55  
  280. 60.7    60  
  281. 62  60  
  282. 63  57  
  283. 58  59  
  284. 62.9    57  
  285. 58.2    60  
  286. 63.2    58  
  287. 61.3    59  
  288. 60.3    60  
  289. 62.7    60  
  290. 61.3    58  
  291. 61.6    60  
  292. 61.9    55  
  293. 61.7    56  
  294. 61.9    58  
  295. 61.8    58  
  296. 61.6    56  
  297. 58.8    66  
  298. 61  57  
  299. 67.4    60  
  300. 63.4    60  
  301. 61.5    59  
  302. 58  62  
  303. 62.4    54  
  304. 61.9    57  
  305. 61.6    56  
  306. 62.2    59  
  307. 62.2    58  
  308. 61.3    56  
  309. 62.3    57  
  310. 61.8    57  
  311. 62.5    59  
  312. 62.9    60  
  313. 61.8    59  
  314. 62.3    56  
  315. 59  70  
  316. 60.7    55  
  317. 62.5    55  
  318. 62.7    58  
  319. 60.4    57  
  320. 62.1    58  
  321. 57.8    60  
  322. 63.8    58  
  323. 62.8    57  
  324. 62.2    58  
  325. 62.3    58  
  326. 59.9    58  
  327. 61.9    54  
  328. 63  55  
  329. 62.4    58  
  330. 62.9    58  
  331. 63.5    56  
  332. 61.3    56  
  333. 60.6    54  
  334. 65.1    58  
  335. 62.6    58  
  336. 58  62  
  337. 62.4    61  
  338. 61.3    57  
  339. 59.9    60  
  340. 60.8    58  
  341. 63.5    55  
  342. 62.2    57  
  343. 63.8    58  
  344. 64  57  
  345. 62.5    56  
  346. 62.3    58  
  347. 61.7    57  
  348. 62.2    58  
  349. 61.5    56  
  350. 61  59  
  351. 62.2    56  
  352. 61.5    54  
  353. 67.3    59  
  354. 61.7    58  
  355. 61.9    56  
  356. 61.8    58  
  357. 58.7    66  
  358. 62.5    57  
  359. 62.8    56  
  360. 61.1    68  
  361. 64  57  
  362. 62.5    60  
  363. 60.6    58  
  364. 61.6    55  
  365. 62.2    58  
  366. 60  57  
  367. 61.9    57  
  368. 62.8    57  
  369. 62  57  
  370. 66.4    59  
  371. 63.4    56  
  372. 60.9    56  
  373. 63.1    57  
  374. 63.1    59  
  375. 59.2    57  
  376. 60.7    54  
  377. 64.6    56  
  378. 61.8    56  
  379. 59.9    60  
  380. 61.7    55  
  381. 62.8    61  
  382. 62.7    57  
  383. 63.4    58  
  384. 63.5    54  
  385. 65.7    59  
  386. 68.1    56  
  387. 63  60  
  388. 59.5    58  
  389. 63.5    59  
  390. 61.7    58  
  391. 62.7    58  
  392. 62.8    58  
  393. 62.4    57  
  394. 61  59  
  395. 63.1    56  
  396. 60.7    57  
  397. 60.9    59  
  398. 60.1    55  
  399. 62.9    58  
  400. 63.3    56  
  401. 63.8    55  
  402. 62.9    57  
  403. 63.4    60  
  404. 63.9    55  
  405. 61.4    56  
  406. 61.9    55  
  407. 62.4    55  
  408. 61.8    58  
  409. 61.5    56  
  410. 60.4    57  
  411. 61.8    55  
  412. 62  56  
  413. 62.3    56  
  414. 61.6    56  
  415. 60.6    56  
  416. 58.4    62  
  417. 61.4    58  
  418. 61.9    56  
  419. 62  56  
  420. 61.5    57  
  421. 62.3    58  
  422. 60.9    61  
  423. 62.4    57  
  424. 55  61  
  425. 58.6    60  
  426. 62  57  
  427. 59.8    58  
  428. 63.4    55  
  429. 64.3    58  
  430. 62.2    59  
  431. 61.7    57  
  432. 61.1    59  
  433. 61.5    56  
  434. 58.5    62  
  435. 61.7    58  
  436. 60.4    56  
  437. 61.4    56  
  438. 61.5    55  
  439. 61.4    56  
  440. 65  56  
  441. 56  60  
  442. 60.2    59  
  443. 58.3    58  
  444. 53.1    63  
  445. 60.3    58  
  446. 61.4    56  
  447. 60.1    57  
  448. 63.4    55  
  449. 61.5    59  
  450. 62.7    56  
  451. 62.5    55  
  452. 61.3    56  
  453. 60.2    56  
  454. 62.7    57  
  455. 62.3    58  
  456. 61.5    56  
  457. 59.2    59  
  458. 61.8    59  
  459. 61.3    55  
  460. 61.4    58  
  461. 62.8    55  
  462. 62.8    64  
  463. 62.4    61  
  464. 59.3    60  
  465. 63  60  
  466. 61.3    60  
  467. 59.3    62  
  468. 61  57  
  469. 62.9    57  
  470. 59.6    57  
  471. 61.8    60  
  472. 62.7    57  
  473. 65.3    62  
  474. 63.8    58  
  475. 62.3    56  
  476. 59.7    63  
  477. 64.3    60  
  478. 62.9    58  
  479. 62  57  
  480. 61.6    59  
  481. 61.9    55  
  482. 61.3    58  
  483. 63.6    57  
  484. 59.6    61  
  485. 62.2    59  
  486. 61.7    55  
  487. 63.2    58  
  488. 60.8    60  
  489. 60.3    59  
  490. 60.9    60  
  491. 62.4    59  
  492. 60.2    60  
  493. 62  55  
  494. 60.8    57  
  495. 62.1    55  
  496. 62.7    60  
  497. 61.3    58  
  498. 60.2    60  
  499. 60.7    56