




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第python數(shù)據(jù)分析之單因素分析線性擬合及地理編碼目錄一、單因素分析線性擬合二、實(shí)現(xiàn)地理編碼
一、單因素分析線性擬合
功能:線性擬合,單因素分析,對(duì)散點(diǎn)圖進(jìn)行線性擬合,并放大散點(diǎn)圖的局部位置輸入:某個(gè)xlsx文件,包含患者密度(人/10萬人)和人口密度(人/平方千米)兩列輸出:對(duì)這兩列數(shù)據(jù)進(jìn)行線性擬合,繪制散點(diǎn)
實(shí)現(xiàn)代碼:
importpandasaspd
frompylabimportmpl
fromscipyimportoptimize
importnumpyasnp
importmatplotlib.pyplotasplt
deff_1(x,A,B):
returnA*x+B
defdraw_cure(file):
data1=pd.read_excel(file)
data1=pd.DataFrame(data1)
hz=list(data1['患者密度(人/10萬人)'])
rk=list(data1['人口密度(人/平方千米)'])
hz_gy=[]
rk_gy=[]
foriinhz:
hz_gy.append((i-min(hz))/(max(hz)-min(hz)))
foriinrk:
rk_gy.append((i-min(rk))/(max(rk)-min(rk)))
n=['玄武區(qū)','秦淮區(qū)','建鄴區(qū)','鼓樓區(qū)','浦口區(qū)','棲霞區(qū)','雨花臺(tái)區(qū)','江寧區(qū)','六合區(qū)','溧水區(qū)','高淳區(qū)',
'錫山區(qū)','惠山區(qū)','濱湖區(qū)','梁溪區(qū)','新吳區(qū)','江陰市','宜興市',
'鼓樓區(qū)','云龍區(qū)','賈汪區(qū)','泉山區(qū)','銅山區(qū)','豐縣','沛縣','睢寧縣','新沂市','邳州市',
'天寧區(qū)','鐘樓區(qū)','新北區(qū)','武進(jìn)區(qū)','金壇區(qū)','溧陽市',
'虎丘區(qū)','吳中區(qū)','相城區(qū)','姑蘇區(qū)','吳江區(qū)','常熟市','張家港市','昆山市','太倉市',
'崇川區(qū)','港閘區(qū)','通州區(qū)','如東縣','啟東市','如皋市','海門市','海安市',
'連云區(qū)','海州區(qū)','贛榆區(qū)','東??h','灌云縣','灌南縣',
'淮安區(qū)','淮陰區(qū)','清江浦區(qū)','洪澤區(qū)','漣水縣','盱眙縣','金湖縣',
'亭湖區(qū)','鹽都區(qū)','大豐區(qū)','響水縣','濱??h','阜寧縣','射陽縣','建湖縣','東臺(tái)市',
'廣陵區(qū)','邗江區(qū)','江都區(qū)','寶應(yīng)縣','儀征市','高郵市',
'京口區(qū)','潤州區(qū)','丹徒區(qū)','丹陽市','揚(yáng)中市','句容市',
'海陵區(qū)','高港區(qū)','姜堰區(qū)','興化市','靖江市','泰興市',
'宿城區(qū)','宿豫區(qū)','沭陽縣','泗陽縣','泗洪縣']
mpl.rcParams['font.sans-serif']=['FangSong']
plt.figure(figsize=(16,8),dpi=98)
p1=plt.subplot(121)
p2=plt.subplot(122)
p1.scatter(rk_gy,hz_gy,c='r')
p2.scatter(rk_gy,hz_gy,c='r')
p1.axis([0.0,1.01,0.0,1.01])
p1.set_ylabel("患者密度(人/10萬人)",fontsize=13)
p1.set_xlabel("人口密度(人/平方千米)",fontsize=13)
p1.set_title("人口密度—患者密度相關(guān)性",fontsize=13)
fori,txtinenumerate(n):
p1.annotate(txt,(rk_gy[i],hz_gy[i]))
A1,B1=optimize.curve_fit(f_1,rk_gy,hz_gy)[0]
x1=np.arange(0,1,0.01)
y1=A1*x1+B1
p1.plot(x1,y1,"blue",label='一次擬合直線')
x2=np.arange(0,1,0.01)
y2=x2
p1.plot(x2,y2,'g--',label='y=x')
p1.legend(loc='upperleft',fontsize=13)
##plotthebox
tx0=0;tx1=0.1;ty0=0;ty1=0.2
sx=[tx0,tx1,tx1,tx0,tx0]
sy=[ty0,ty0,ty1,ty1,ty0]
p1.plot(sx,sy,"purple")
p2.axis([0,0.1,0,0.2])
p2.set_ylabel("患者密度(人/10萬人)",fontsize=13)
p2.set_xlabel("人口密度(人/平方千米)",fontsize=13)
p2.set_title("人口密度—患者密度相關(guān)性",fontsize=13)
fori,txtinenumerate(n):
p2.annotate(txt,(rk_gy[i],hz_gy[i]))
p2.plot(x1,y1,"blue",label='一次擬合直線')
p2.plot(x2,y2,'g--',label='y=x')
p2.legend(loc='upperleft',fontsize=13)
plt.show()
if__name__=='__main__':
draw_cure("F:\醫(yī)學(xué)大數(shù)據(jù)課題\論文終稿修改\scientificreport\返修\市區(qū)縣相關(guān)分析_2231.xls")
實(shí)現(xiàn)效果:
二、實(shí)現(xiàn)地理編碼
輸入:中文地址信息,例如安徽為縣天城鎮(zhèn)都督村沖里18號(hào)輸出:經(jīng)緯度坐標(biāo),例如107.3479975498958130.50483335424108功能:根據(jù)中文地址信息獲取經(jīng)緯度坐標(biāo)
實(shí)現(xiàn)代碼:
importjson
fromurllib.requestimporturlopen,quote
importxlrd
defreadXLS(XLS_FILE,sheet0):
rb=xlrd.open_workbook(XLS_FILE)
rs=rb.sheets()[sheet0]
returnrs
defgetlnglat(adress):
url='/geocoding/v3/address='
output='json'
ak='fdi11GHN3GYVQdzVnUPuLSScYBVxYDFK'
add=quote(adress)#使用quote進(jìn)行編碼為了防止中文亂碼
#add=adress
url2=url+add+'output='+output+'ak='+ak
req=urlopen(url2)
res=req.read().decode()
temp=json.loads(res)
returntemp
defgetlatlon(sd_rs):
nrows_sd_rs=sd_rs.nrows
foriinrange(4,nrows_sd_rs):
#foriinrange(4,7):
row=sd_rs.row_values(i)
print(i,i/nrows_sd_rs)
b=(row[11]+row[12]+row[9]).replace('#','號(hào)')#第三列的地址
print(b)
try:
lng=getlnglat(b)['result']['location']['lng']
#獲取經(jīng)度并寫入
lat=getlnglat(b)['result']['location']['lat']
#獲取緯度并寫入
exceptKeyErrorase:
lng=''
lat=''
f_err=open('f_err.txt','a')
f_err.write(str(i)+'\t')
f_err.close()
print(e)
print(lng,lat)
f_latlon=open('f_latlon.txt','a')
f_latlon.write(row[0]+'\t'+b+'\t'+str(lng)+'\t'+str(lat)+'\n')
f_latlon.close()
if__nam
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 石油化工產(chǎn)品的市場分析與銷售策略考核試卷
- 環(huán)保課件下載
- 聯(lián)誼策劃活動(dòng)方案
- 環(huán)保工程師課件下載
- 2019-2025年監(jiān)理工程師之合同管理能力提升試卷A卷附答案
- 《高效人力管理策略及其課件制作要點(diǎn)》
- 《三年級(jí)下冊(cè)彩虹橋課件語》
- 猴痘普及知識(shí)培訓(xùn)課件
- 培訓(xùn)會(huì)議主持流程主持詞
- 2025年盲盒研究分析報(bào)告
- 【正版授權(quán)】 ISO 4532:1991 EN Vitreous and porcelain enamels - Determination of the resistance of enamelled articles to impact - Pistol test
- 2023-2024學(xué)年人教版數(shù)學(xué)八年級(jí)下冊(cè)期末復(fù)習(xí)試卷
- 園區(qū)綠化設(shè)計(jì)方案
- 火力發(fā)電廠汽水管道支吊架設(shè)計(jì)手冊(cè)
- 第五章-包裝容器造型設(shè)計(jì)
- 數(shù)字貿(mào)易學(xué) 課件 第1章 導(dǎo)論
- 《陣列式消聲器技術(shù)要求》(T-CAEPI 17-2019)
- (2024版)應(yīng)對(duì)群體性事件的策略與技巧
- 社區(qū)警務(wù)工作培訓(xùn)
- 角磨機(jī)切割作業(yè)的應(yīng)急預(yù)案
- 搪瓷制品的藝術(shù)創(chuàng)作與文化創(chuàng)意
評(píng)論
0/150
提交評(píng)論