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

Python實現(xiàn)識別文字中的省市區(qū)并繪圖

 更新時間:2022年06月24日 09:51:16   作者:Ckend  
在做NLP(自然語言處理)相關(guān)任務(wù)時,經(jīng)常會遇到需要識別并提取省、城市、行政區(qū)的需求。今天給大家介紹一個模塊,你只需要把字符串傳遞給這個模塊,他就能給你返回這個字符串內(nèi)的省、市、區(qū)關(guān)鍵詞,快來學(xué)習(xí)一下吧

在做NLP(自然語言處理)相關(guān)任務(wù)時,經(jīng)常會遇到需要識別并提取省、城市、行政區(qū)的需求。雖然我們自己通過關(guān)鍵詞表一個個查找也能實現(xiàn)提取目的,但是需要先搜集省市區(qū)關(guān)鍵詞表,相對而言比較繁瑣。

今天給大家介紹一個模塊,你只需要把字符串傳遞給這個模塊,他就能給你返回這個字符串內(nèi)的省、市、區(qū)關(guān)鍵詞,并能給你在圖片上標(biāo)注起來,它就是 Cpca 模塊。

1.準(zhǔn)備

開始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上,如果沒有,可以訪問這篇文章:超詳細Python安裝指南 進行安裝。

(可選1) 如果你用Python的目的是數(shù)據(jù)分析,可以直接安裝Anaconda,它內(nèi)置了Python和pip.

(可選2) 此外,推薦大家用VSCode編輯器,它有許多的優(yōu)點

請選擇以下任一種方式輸入命令安裝依賴

1. Windows 環(huán)境 打開 Cmd (開始-運行-CMD)。

2. MacOS 環(huán)境 打開 Terminal (command+空格輸入Terminal)。

3. 如果你用的是 VSCode編輯器 或 Pycharm,可以直接使用界面下方的Terminal.

pip?install?cpca

注意,目前 cpca 模塊僅支持Python3及以上版本。

在 windows 上可能會出現(xiàn)類似如下問題:

Building wheel?for?pyahocorasick (setup.py) ... error

先閱讀原文去下載 Microsoft Visual C++ Build Tools 安裝VC++構(gòu)建工具,再重新 pip install cpca,即可解決問題。

2.基本使用

通過兩行代碼就能實現(xiàn)最基本的省市區(qū)提?。?/p>

# 公眾號: Python 實用寶典
# 2022/06/23

import?cpca

location_str = [
????"廣東省深圳市福田區(qū)巴丁街深南中路1025號新城大廈1層",
????"特斯拉上海超級工廠是特斯拉汽車首座美國本土以外的超級工廠,位于中華人民共和國上海市。",
????"三星堆遺址位于中國四川省廣漢市城西三星堆鎮(zhèn)的鴨子河畔,屬青銅時代文化遺址"
]
df = cpca.transform(location_str)
print(df)

效果如下:

省 市 區(qū) 地址 adcode
0 廣東省 深圳市 福田區(qū) 巴丁街深南中路1025號新城大廈1層 440304
1 上海市 None None 。310000
2 四川省 德陽市 廣漢市 城西三星堆鎮(zhèn)的鴨子河畔,屬青銅時代文化遺址 510681

注意第三條的廣漢市,cpca 不僅識別到了語句中的縣級市廣漢市,還能自動匹配到其代管市的德陽市,不得不說非常強大。

如果你想獲知程序是從字符串的那個位置提取出省市區(qū)名的,可以添加一個 pos_sensitive=True 參數(shù):

# 公眾號: Python 實用寶典
# 2022/06/23

import?cpca

location_str = [
????"廣東省深圳市福田區(qū)巴丁街深南中路1025號新城大廈1層",
????"特斯拉上海超級工廠是特斯拉汽車首座美國本土以外的超級工廠,位于中華人民共和國上海市。",
????"三星堆遺址位于中國四川省廣漢市城西三星堆鎮(zhèn)的鴨子河畔,屬青銅時代文化遺址"
]
df = cpca.transform(location_str, pos_sensitive=True)
print(df)

效果如下:

(base) G:\push\20220623>python 1.py
     省 市 區(qū) 地址 adcode 省_pos 市_pos 區(qū)_pos
0  廣東省 深圳市 福田區(qū) 巴丁街深南中路1025號新城大廈1層 440304      0      3      6
1  上海市 None None 。310000     38     -1     -1
2  四川省 德陽市 廣漢市 城西三星堆鎮(zhèn)的鴨子河畔,屬青銅時代文化遺址 510681      9     -1     12

它標(biāo)記出了識別到省、市、區(qū)的關(guān)鍵位置(index),當(dāng)然如果是德陽市這種特殊的識別會被標(biāo)記為-1.

3.高級使用

它還可以從大段文本中批量識別多個地區(qū):

# 公眾號: Python 實用寶典
# 2022/06/23

import?cpca

long_text =?"對一個城市的評價總會包含個人的感情。如果你喜歡一個城市,很有可能是喜歡彼時彼地的自己。"\
????"在廣州、香港讀過書,工作過,在深圳買過房、短暫生活過,去北京出了幾次差。"\
????"想重點比較一下廣州、深圳和香港,順帶說一下北京。總的來說,覺得廣州舒適、"\
????"香港精致、深圳年輕氣氛好、北京大氣又粗糙。答主目前選擇了廣州。"
df = cpca.transform_text_with_addrs(long_text, pos_sensitive=True)
print(df)

效果如下:

(base) G:\push\20220623>python 1.py
          省 市 區(qū) 地址 adcode 省_pos 市_pos 區(qū)_pos
0       廣東省 廣州市 None     440100     -1     44     -1
1   香港特別行政區(qū) None  None     810000     47     -1     -1
2       廣東省 深圳市 None     440300     -1     58     -1
3       北京市 None  None     110000     71     -1     -1
4       廣東省 廣州市 None     440100     -1     86     -1
5       廣東省 深圳市 None     440300     -1     89     -1
6   香港特別行政區(qū) None  None     810000     92     -1     -1
7       北京市 None  None     110000    100     -1     -1
8       廣東省 廣州市 None     440100     -1    110     -1
9   香港特別行政區(qū) None  None     810000    115     -1     -1
10      廣東省 深圳市 None     440300     -1    120     -1
11      北京市 None  None     110000    128     -1     -1
12      廣東省 廣州市 None     440100     -1    143     -1

不僅如此,模塊中還自帶一些簡單繪圖工具,可以在地圖上將上面輸出的數(shù)據(jù)以熱力圖的形式畫出來:

# 公眾號: Python 實用寶典
# 2022/06/23

import?cpca
from?cpca?import?drawer

long_text =?"對一個城市的評價總會包含個人的感情。如果你喜歡一個城市,很有可能是喜歡彼時彼地的自己。"\
????"在廣州、香港讀過書,工作過,在深圳買過房、短暫生活過,去北京出了幾次差。"\
????"想重點比較一下廣州、深圳和香港,順帶說一下北京??偟膩碚f,覺得廣州舒適、"\
????"香港精致、深圳年輕氣氛好、北京大氣又粗糙。答主目前選擇了廣州。"
df = cpca.transform_text_with_addrs(long_text, pos_sensitive=True)
drawer.draw_locations(df[cpca._ADCODE],?"df.html")

運行的時候可能會報這個錯:

(base) G:\push\20220623>python 1.py
Traceback (most recent call last):
  File "1.py", line 12, in <module>
    drawer.draw_locations(df[cpca._ADCODE], "df.html")
  File "G:\Anaconda3\lib\site-packages\cpca\drawer.py", line 41, in draw_locations
    import folium
ModuleNotFoundError: No module named 'folium'

使用pip安裝即可:

pip?install?folium

然后重新運行代碼,會在當(dāng)前目錄下生成 df.html, 雙擊打開,效果如下:

怎么用,是不是感覺非常方便?以后地點的識別用這個模塊就完全夠了。

還有更多的細節(jié)你可以訪問這個項目的Github主頁閱讀,該項目的README完全中文編寫,非常容易閱讀:

到此這篇關(guān)于Python實現(xiàn)識別文字中的省市區(qū)并繪圖的文章就介紹到這了,更多相關(guān)Python識別文字中省市區(qū)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python 自動監(jiān)控最新郵件并讀取的操作

    python 自動監(jiān)控最新郵件并讀取的操作

    這篇文章主要介紹了python 自動監(jiān)控最新郵件并讀取的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • Python告訴你木馬程序的鍵盤記錄原理

    Python告訴你木馬程序的鍵盤記錄原理

    今天小編就為大家分享一篇關(guān)于Python告訴你木馬程序的鍵盤記錄原理,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • 通過字符串導(dǎo)入 Python 模塊的方法詳解

    通過字符串導(dǎo)入 Python 模塊的方法詳解

    這篇文章主要介紹了通過字符串導(dǎo)入 Python 模塊的方法詳解,本文通過實例結(jié)合,給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-10-10
  • Django中常用的查詢數(shù)據(jù)方法及查詢對象的條件詳解

    Django中常用的查詢數(shù)據(jù)方法及查詢對象的條件詳解

    在web 開發(fā)過程中,Django 與后臺數(shù)據(jù)庫的交互是必不可少的一項,也是實現(xiàn)業(yè)務(wù)邏輯所需數(shù)據(jù)的重要方式,這篇文章主要給大家介紹了關(guān)于Django中常用的查詢數(shù)據(jù)方法及查詢對象條件的相關(guān)資料,需要的朋友可以參考下
    2021-09-09
  • Python多行輸入程序?qū)嵗a及擴展

    Python多行輸入程序?qū)嵗a及擴展

    我們都知道Python內(nèi)置方法input只能輸入一行內(nèi)容,我們今天來實現(xiàn)輸入多行文本功能,這篇文章主要給大家介紹了關(guān)于Python多行輸入程序的相關(guān)資料,需要的朋友可以參考下
    2022-04-04
  • python傳遞參數(shù)方式小結(jié)

    python傳遞參數(shù)方式小結(jié)

    這篇文章主要介紹了python傳遞參數(shù)方式,實例總結(jié)了Python常用的參數(shù)傳遞方式,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-04-04
  • Python數(shù)據(jù)結(jié)構(gòu)與算法之使用隊列解決小貓釣魚問題

    Python數(shù)據(jù)結(jié)構(gòu)與算法之使用隊列解決小貓釣魚問題

    這篇文章主要介紹了Python數(shù)據(jù)結(jié)構(gòu)與算法之使用隊列解決小貓釣魚問題,結(jié)合實例形式分析了Python使用隊列實現(xiàn)小貓釣魚游戲的算法操作技巧,代碼中備有較為詳盡的注釋便于讀者理解,需要的朋友可以參考下
    2017-12-12
  • python自動化實現(xiàn)登錄獲取圖片驗證碼功能

    python自動化實現(xiàn)登錄獲取圖片驗證碼功能

    這篇文章主要介紹了python自動化實現(xiàn)登錄獲取圖片驗證碼功能,本文通過實例截圖的形式給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-11-11
  • python for循環(huán)內(nèi)輸出和外輸出方式

    python for循環(huán)內(nèi)輸出和外輸出方式

    這篇文章主要介紹了python for循環(huán)內(nèi)輸出和外輸出方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • Python使用matplotlib繪制多個圖形單獨顯示的方法示例

    Python使用matplotlib繪制多個圖形單獨顯示的方法示例

    這篇文章主要介紹了Python使用matplotlib繪制多個圖形單獨顯示的方法,結(jié)合實例形式分析了matplotlib實現(xiàn)繪制多個圖形單獨顯示的具體操作技巧與注意事項,代碼備有較為詳盡的注釋便于理解,需要的朋友可以參考下
    2018-03-03

最新評論