最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python Pandas兩個表格內(nèi)容模糊匹配的實現(xiàn)

 更新時間:2021年11月11日 17:16:56   作者:迪迦瓦特曼  
模糊查詢大家應(yīng)該都不會陌生,下面這篇文章主要給大家介紹了關(guān)于Python Pandas兩個表格內(nèi)容模糊匹配的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下

一、方法2

此方法是兩個表構(gòu)建某一相同字段,然后全連接,在做匹配結(jié)果篩選,此方法針對數(shù)據(jù)量不大的時候,邏輯比較簡單,但是內(nèi)存消耗較大

1. 導(dǎo)入庫

import pandas as pd
import numpy as np
import re

2. 構(gòu)建關(guān)鍵詞

#關(guān)鍵詞數(shù)據(jù)
df_keyword = pd.DataFrame({
    "keyid" : np.arange(5),
    "keyword" : ["numpy", "pandas", "matplotlib", "sklearn", "tensorflow"]
})
df_keyword

3. 構(gòu)建句子

df_sentence = pd.DataFrame({
    "senid" : np.arange(10,17),
    "sentence" : [
        "怎樣用pandas實現(xiàn)merge?",
        "Python之Numpy詳細教程",
        "怎么使用Pandas批量拆分與合并Excel文件?",
        "怎樣使用pandas的map和apply函數(shù)?",
        "深度學(xué)習(xí)之tensorflow簡介",
        "tensorflow和numpy的關(guān)系",
        "基于sklearn的一些機器學(xué)習(xí)的代碼"
    ]
})
df_sentence

 

4. 建立統(tǒng)一索引

df_keyword['match'] = 1
df_sentence['match'] = 1

5. 表連接

df_merge = pd.merge(df_keyword, df_sentence)
df_merge

6. 關(guān)鍵詞匹配

def match_func(row):
    return re.search(row["keyword"], row["sentence"], re.IGNORECASE) is not None
df_merge[df_merge.apply(match_func, axis = 1)]

匹配結(jié)果如下 

二、方法2

此方法對編程能力有要求,在大數(shù)據(jù)集上計算量較方法一小很多

1. 構(gòu)建字典

key_word_dict = {
    row.keyword : row.keyid
    for row in df_keyword.itertuples()
}
key_word_dict
{'numpy': 0, 'pandas': 1, 'matplotlib': 2, 'sklearn': 3, 'tensorflow': 4}

2. 關(guān)鍵詞匹配

def merge_func(row):
    #新增一列,表示可以匹配的keyid
    row["keyids"] = [
        keyid
        for key_word, keyid in key_word_dict.items()
        if re.search(key_word, row["sentence"], re.IGNORECASE)
    ]
    return row
df_merge = df_sentence.apply(merge_func, axis = 1)

3. 結(jié)果展示

df_merge

4. 匹配結(jié)果展開

df_result = pd.merge(
left = df_merge.explode("keyids"),
right = df_keyword,
left_on = "keyids",
right_on = "keyid")
df_result

總結(jié)

到此這篇關(guān)于Python Pandas兩個表格內(nèi)容模糊匹配搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Django 全局的static和templates的使用詳解

    Django 全局的static和templates的使用詳解

    這篇文章主要介紹了Django 全局的static和templates的使用詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-07-07
  • python實現(xiàn)本地批量ping多個IP的方法示例

    python實現(xiàn)本地批量ping多個IP的方法示例

    這篇文章主要介紹了python實現(xiàn)本地批量ping多個IP的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • python中對list去重的多種方法

    python中對list去重的多種方法

    這篇文章主要介紹了python中對list去重的多種方法,本文去重的前提是要保證順序不變,本文給出了多種實現(xiàn)方法,需要的朋友可以參考下
    2014-09-09
  • 使用Pandas實現(xiàn)MySQL窗口函數(shù)的解決方法

    使用Pandas實現(xiàn)MySQL窗口函數(shù)的解決方法

    本文主要介紹 MySQL 中的窗口函數(shù)row_number()、lead()/lag()、rank()/dense_rank()、first_value()、count()、sum()如何使用pandas實現(xiàn),同時二者又有什么區(qū)別,感興趣的朋友一起看看吧
    2023-02-02
  • 一份python入門應(yīng)該看的學(xué)習(xí)資料

    一份python入門應(yīng)該看的學(xué)習(xí)資料

    關(guān)于python入門你應(yīng)該看這些資料,幫助你快速入門python,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • python導(dǎo)入時小括號大作用

    python導(dǎo)入時小括號大作用

    這篇文章主要介紹了python導(dǎo)入時小括號的大作用,非常的簡單實用,希望這個小技巧能夠幫到大家
    2017-01-01
  • 用Python寫腳本,實現(xiàn)完全備份和增量備份的示例

    用Python寫腳本,實現(xiàn)完全備份和增量備份的示例

    下面小編就為大家分享一篇用Python寫腳本,實現(xiàn)完全備份和增量備份的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • python利用datetime模塊計算時間差

    python利用datetime模塊計算時間差

    python中通過datetime模塊可以很方便的計算兩個時間的差,datetime的時間差單位可以是天、小時、秒,甚至是微秒,下面我們就來詳細看下datetime的強大功能吧
    2015-08-08
  • 淺談python累加求和+奇偶數(shù)求和_break_continue

    淺談python累加求和+奇偶數(shù)求和_break_continue

    這篇文章主要介紹了淺談python累加求和+奇偶數(shù)求和_break_continue,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • Python字符和字符值(ASCII或Unicode碼值)轉(zhuǎn)換方法

    Python字符和字符值(ASCII或Unicode碼值)轉(zhuǎn)換方法

    這篇文章主要介紹了Python字符和字符值(ASCII或Unicode碼值)轉(zhuǎn)換方法,即把字符串在ASCII值或者Unicode值之間相與轉(zhuǎn)換的方法,需要的朋友可以參考下
    2015-05-05

最新評論

肃南| 吉水县| 宁蒗| 长海县| 常州市| 衡水市| 湟源县| 福安市| 尖扎县| 龙南县| 弥渡县| 伊川县| 庆阳市| 邓州市| 秭归县| 凌云县| 新疆| 安丘市| 麻阳| 天津市| 石台县| 东山县| 沛县| 东明县| 府谷县| 阜新市| 肇源县| 昔阳县| 运城市| 金阳县| 封丘县| 赣榆县| 木里| 宁远县| 长宁区| 韶关市| 明溪县| 兴城市| 梅州市| 勃利县| 高雄县|