欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python數(shù)據(jù)分析之單因素分析線性擬合及地理編碼

 更新時(shí)間:2022年06月24日 17:02:05   作者:不再依然07  
這篇文章主要介紹了python數(shù)據(jù)分析之單因素分析線性擬合及地理編碼,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下

一、單因素分析線性擬合

  • 功能:線性擬合,單因素分析,對(duì)散點(diǎn)圖進(jìn)行線性擬合,并放大散點(diǎn)圖的局部位置
  • 輸入:某個(gè)xlsx文件,包含'患者密度(人/10萬(wàn)人)'和'人口密度(人/平方千米)'兩列
  • 輸出:對(duì)這兩列數(shù)據(jù)進(jìn)行線性擬合,繪制散點(diǎn)

實(shí)現(xiàn)代碼:

import pandas as pd
from pylab import mpl
from scipy import optimize
import numpy as np
import matplotlib.pyplot as plt
def f_1(x, A, B):
? ? return A*x + B
def draw_cure(file):
? ? data1=pd.read_excel(file)
? ? data1=pd.DataFrame(data1)
? ? hz=list(data1['患者密度(人/10萬(wàn)人)'])
? ? rk=list(data1['人口密度(人/平方千米)'])
? ? hz_gy=[]
? ? rk_gy=[]
? ? for i in hz:
? ? ? ? hz_gy.append((i-min(hz))/(max(hz)-min(hz)))
? ? for i in rk:
? ? ? ? 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ū)','溧陽(yáng)市',
? ? ? ?'虎丘區(qū)','吳中區(qū)','相城區(qū)','姑蘇區(qū)','吳江區(qū)','常熟市','張家港市','昆山市','太倉(cāng)市',
? ? ? ?'崇川區(qū)','港閘區(qū)','通州區(qū)','如東縣','啟東市','如皋市','海門市','海安市',
? ? ? ?'連云區(qū)','海州區(qū)','贛榆區(qū)','東海縣','灌云縣','灌南縣',
? ? ? ?'淮安區(qū)','淮陰區(qū)','清江浦區(qū)','洪澤區(qū)','漣水縣','盱眙縣','金湖縣',
? ? ? ?'亭湖區(qū)','鹽都區(qū)','大豐區(qū)','響水縣','濱??h','阜寧縣','射陽(yáng)縣','建湖縣','東臺(tái)市',
? ? ? ?'廣陵區(qū)','邗江區(qū)','江都區(qū)','寶應(yīng)縣','儀征市','高郵市',
? ? ? ?'京口區(qū)','潤(rùn)州區(qū)','丹徒區(qū)','丹陽(yáng)市','揚(yáng)中市','句容市',
? ? ? ?'海陵區(qū)','高港區(qū)','姜堰區(qū)','興化市','靖江市','泰興市',
? ? ? ?'宿城區(qū)','宿豫區(qū)','沭陽(yáng)縣','泗陽(yáng)縣','泗洪縣']
? ? 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萬(wàn)人)",fontsize=13)
? ? p1.set_xlabel("人口密度(人/平方千米)",fontsize=13)
? ? p1.set_title("人口密度—患者密度相關(guān)性",fontsize=13)
? ? for i,txt in enumerate(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='upper left',fontsize=13)
? ? # # plot the box
? ? 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萬(wàn)人)",fontsize=13)
? ? p2.set_xlabel("人口密度(人/平方千米)",fontsize=13)
? ? p2.set_title("人口密度—患者密度相關(guān)性",fontsize=13)
? ? for i,txt in enumerate(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='upper left',fontsize=13)
? ? plt.show()
if __name__ == '__main__':
? ? draw_cure("F:\醫(yī)學(xué)大數(shù)據(jù)課題\論文終稿修改\scientific report\返修\市區(qū)縣相關(guān)分析 _2231.xls")

實(shí)現(xiàn)效果:

二、實(shí)現(xiàn)地理編碼

  • 輸入:中文地址信息,例如安徽為縣天城鎮(zhèn)都督村沖里18號(hào)
  • 輸出:經(jīng)緯度坐標(biāo),例如107.34799754989581 30.50483335424108
  • 功能:根據(jù)中文地址信息獲取經(jīng)緯度坐標(biāo)

實(shí)現(xiàn)代碼:

import json
from urllib.request import urlopen,quote
import xlrd
def readXLS(XLS_FILE,sheet0):
? ? rb= xlrd.open_workbook(XLS_FILE)
? ? rs= rb.sheets()[sheet0]
? ? return rs
def getlnglat(adress):
? ? url = 'http://api.map.baidu.com/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)
? ? return temp
def getlatlon(sd_rs):
? ? nrows_sd_rs=sd_rs.nrows
? ? for i in range(4,nrows_sd_rs):
? ? # for i in range(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'] ?#獲取緯度并寫入
? ? ? ? except KeyError as e:
? ? ? ? ? ? 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 __name__=='__main__':
? ? # sle_xls_file = 'F:\醫(yī)學(xué)大數(shù)據(jù)課題\江蘇省SLE數(shù)據(jù)庫(kù)(兩次隨訪合并).xlsx'
? ? sle_xls_file = "F:\醫(yī)學(xué)大數(shù)據(jù)課題\數(shù)據(jù)副本\江蘇省SLE數(shù)據(jù)庫(kù)(兩次隨訪合并) - 副本.xlsx"
? ? sle_data_rs = readXLS(sle_xls_file, 1)
? ? getlatlon(sle_data_rs)

結(jié)果展示:

到此這篇關(guān)于python數(shù)據(jù)分析之單因素分析線性擬合及地理編碼的文章就介紹到這了,更多相關(guān)python數(shù)據(jù)分析內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python使用Kubernetes API訪問集群

    Python使用Kubernetes API訪問集群

    本文主要介紹了Python使用Kubernetes API訪問集群,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • Python PyQt5整理介紹

    Python PyQt5整理介紹

    PyQt5 是Digia的一套Qt5應(yīng)用框架與python的結(jié)合,同時(shí)支持2.x和3.x。這篇文章給大家整理了關(guān)于Python PyQt5的相關(guān)知識(shí),感興趣的朋友一起看看吧
    2020-04-04
  • Python處理unicode字符的方法詳解

    Python處理unicode字符的方法詳解

    這篇文章主要介紹了Python處理unicode字符的方法詳解,unicodedata中定義了所有Unicode字符的字符屬性,主要包含兩個(gè)功能,其一是根據(jù)名字查找字符;其二是給定字符查找其對(duì)應(yīng)的信息,需要的朋友可以參考下
    2023-08-08
  • python BytesIO 中 read 用法示例詳解

    python BytesIO 中 read 用法示例詳解

    這篇文章主要介紹了python BytesIO 中 read 用法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-06-06
  • python爬蟲多次請(qǐng)求超時(shí)的幾種重試方法(6種)

    python爬蟲多次請(qǐng)求超時(shí)的幾種重試方法(6種)

    這篇文章主要介紹了python爬蟲多次請(qǐng)求超時(shí)的幾種重試方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • python使用paramiko實(shí)現(xiàn)ssh的功能詳解

    python使用paramiko實(shí)現(xiàn)ssh的功能詳解

    這篇文章主要介紹了python使用paramiko實(shí)現(xiàn)ssh的功能詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • python中單下劃線(_)和雙下劃線(__)的特殊用法

    python中單下劃線(_)和雙下劃線(__)的特殊用法

    這篇文章主要介紹了python中單下劃線(_)和雙下劃線(__)的特殊用法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-08-08
  • python基礎(chǔ)之循環(huán)語(yǔ)句

    python基礎(chǔ)之循環(huán)語(yǔ)句

    這篇文章主要介紹了python的循環(huán)語(yǔ)句,實(shí)例分析了Python中返回一個(gè)返回值與多個(gè)返回值的方法,需要的朋友可以參考下
    2021-10-10
  • 簡(jiǎn)單的連接MySQL與Python的Bottle框架的方法

    簡(jiǎn)單的連接MySQL與Python的Bottle框架的方法

    這篇文章主要介紹了簡(jiǎn)單的連接MySQL與Python的Bottle框架的方法,主要基于mysql-connector插件,需要的朋友可以參考下
    2015-04-04
  • 詳解Python中import模塊導(dǎo)入的實(shí)現(xiàn)原理

    詳解Python中import模塊導(dǎo)入的實(shí)現(xiàn)原理

    這篇文章主要給大家介紹了Python中import模塊導(dǎo)入的實(shí)現(xiàn)原理,主要從什么是模塊,import搜索路徑以及導(dǎo)入原理這三個(gè)方面給大家介紹,感興趣的小伙伴跟著小編一起來(lái)看看吧
    2023-08-08

最新評(píng)論