简单python数据获取分析_一个简单的关于python爬虫获取数据并使用Numpy分析的案例...

前言

目标:获取成都近十年的人口以及房价数据并分析其相关性和趋势。

目标网站:国家统计局

使用工具:selenium+numpy

IDE:spyder

代码部分

from selenium import webdriver

import matplotlib.pyplot as plt#导入绘图库pyplot

import matplotlib as mat

from numpy import array,cov,corrcoef

import numpy as np

global priceurllis

global purllis

global price1

global price2

global url1

global url2

yearslis=[2008,2009,2010,2011,2012,2013,2014,2015,2016,2017]

priceurllis=[]

purllis=[]

priced1=[]

priced2=[]

#爬取数据部分

def geteaceprice(url1): #定义获取房价数据的函数

browser = webdriver.Chrome()

browser.get(url1)

price1 = browser.find_elements_by_css_selector("td[align^='right']")

for q1 in range(len(price1)):

if q1 ==1:#只获得第一个数据

txt1 = price1[q1].text

priced1.append(txt1)

browser.close()

def geteachperson(url2):#定义获得人口数据的函数

browser = webdriver.Chrome()

browser.get(url2)

price2 = browser.find_elements_by_css_selector("td[align^='right']")

for q2 in range(len(price2)):

if q2 ==1:#只获得第一个数据

txt2 = price2[q2].text

priced2.append(txt2)

browser.close()

def main():#定义主函数

for i in range(10):#产生循环,产生链接,并获得每年的人口与房价数据

url1 = ('http://data.stats.gov.cn/search.htm?s='+str(yearslis[i])+'%20成都%20住宅商品房平均销售价格(元/平方米)')

priceurllis.append(url1)

url2 = ('http://data.stats.gov.cn/search.htm?s='+str(yearslis[i])+'%20成都%20居住人口')

purllis.append(url2)

print(url1,url2)

geteaceprice(url1)

geteachperson(url2)

main()

#数据分析部分,为了简便,直接将获取的数据写出。

y=[4857.00, 4925.00, 5937.00, 6716.71, 7288.24, 7197.00, 7032.00, 6875.00, 7504.00, 8733.00]

y2=[1124.96, 1139.63, 1149.07, 1163.28, 1173.30, 1187.99, 1210.74, 1228.05, 1398.90,1435.33]

plt.plot(yearslis,y2,'b',yearslis,y,'g')

data = array(y)

data2 = array(y2)

x = np.vstack((data,data2))

np.corrcoef(data, data2)

np.corrcoef(x)

6e1097d620f57506bf684b5e71d78e4f.png

总结

由于自己的熟练度限制,代码很多地方很繁琐需要改进,但是总体思路是清晰的,如果有好的建议或者问题请提出来。

另:在爬取数据的时候遇到的许多问题,但是解决后的乐趣是真的爽的一笔,可能这就是编程的乐趣吧

【为什么要学习NumpyNumPyPython语言的一个扩展程序库。支持多维数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。Numpy是人工智能、数据分析从业者必备的知识和技能,也是学习后续Python扩展库(Matplotlib, SciPy, Pandas, Seaborn, Scikit-image等)的基础。【推荐你学习这门课的理由】(1)图文并茂:课程采用Jupyter Notebook讲解,图文并茂,讲述与Numpy代码对应。其文件将分享给学员,可作为交互式电子书使用。(2)案例丰富: 每个知识点均有Numpy代码示例说明;难点使用图解说明和讲述。另提供Numpy项目实战案例-鸢尾花数据集上的数据分析与计算。(3)内容全面系统:涵盖了Numpy的基础用法和高级用法,包括:ndarray、创建数组、复制数组、数组访问、数组运算、数组操作、迭代数组、maskedarray、结构化数组、通用函数、数学函数、统计函数、排序函数、条件查找、随机数、字节交换、线性代数、数据文件读写等。   玩转是一种境界,显示了对该领域有很大的兴趣,并非常了解和能娴熟使用。希望本课程能帮助大家玩转Numpy!【优惠说明】 课程正在优惠中! 备注:购课后可加入白勇老师课程学习交流QQ群:957519975【相关课程】《玩转Matplotlib数据绘图库》课程链接:https://edu.csdn.net/course/detail/28720 《Python编程的术与道:Python语言入门》课程链接: https://edu.csdn.net/course/detail/27845  《Python编程的术与道:Python语言进阶》课程链接: https://edu.csdn.net/course/detail/28618 【课程体系结构图】  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值