PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
Python
[問題] 字串的關鍵字提取
作者:
moodoa3583
(金牌å°ç£å•¤é…’)
2020-03-05 09:41:10
嗨大家好,我有一個表格像是這樣
http://i.imgur.com/ld7tHmC.jpg
最後一欄Note是這個球員的受傷資訊,可以看到有 right hamstring injury、concussion
而我現在只需要部位不需要其他描述,例如 sore lower back我只需要back,right knee injury只需要knee。
我第一個想法是把所有部位集中成一個list,然後split字串做mapping,但這個做法有點費時。
第二個想法是搜集形容詞並抓形容詞後的單字,但資料的字串順序又不是那麼整齊。
想問各位有什麼好的提取法嗎?
附上網址
https://reurl.cc/xZxR7E
作者:
bjchiou
(bjchiou)
2020-03-05 09:49:00
抓right left後的第一個字,其他另外設計?
作者:
ddavid
(謊言接線生)
2020-03-05 09:56:00
我最近才解決一個很類似的問題(但複雜很多),我只能說以你這個問題的規模,第一種想法有可能反而會是實作最快的。第二個想法只能做為萬一出現不在列表中的部位時,嘗試自動抓取部位的候補想法因為你的範圍限定在球員,常見傷病種類會有一定的範圍,第一種想法未必如想像中耗時。而且可以在有列表未出現的案例時再直接針對該案例補充關鍵字即可,不需要要求第一次建立List就是完整的或者也可反過來,你先進行第二種想法做為人力添加關鍵字的輔助,這樣也可以節省一些時間
作者:
papple23g
(逆道者)
2020-03-05 10:04:00
維持第一個想法+1 如果該欄有未包含部位就報錯 直到沒有報錯為止assert all((body_part in note_text) for body_part in body_part_list),'需要更新身體部位的欄位:'+note_text
作者:
ddavid
(謊言接線生)
2020-03-05 10:05:00
我自己解的問題是用多重機制共同驗證來幫每個關鍵字算積分做排名然後優先從高分關鍵字選下來,但那是因為我的關鍵字種類甚至無法限定在名詞,還可能是一個句子。你這work單純許多,我想是不用這麼費工。
作者:
alvinlin
(林矜業)
2020-03-05 14:51:00
為什麼不用regex?把身體部位寫成pattern比對即可
作者:
ddavid
(謊言接線生)
2020-03-05 18:15:00
我是總覺得這個問題規模應該不至於要搞到分析語句詞性XDNBA球員範圍而已,光是總量可能都未必多到哪裡去,部位名稱也應該重複使用的字詞很多,這應該是人力可及的範圍XD而且先基本做看看,發現真的不行或將來要擴展到資料很多的範圍,再補上關鍵字自動萃取機能來輔助也還來得及
作者:
vi000246
(Vi)
2020-03-05 18:21:00
做詞性分析,把名詞提取出來剛剛用這個試了一下 成功率很高
https://parts-of-speech.info/
作者:
moodoa3583
(金牌å°ç£å•¤é…’)
2020-03-05 22:49:00
噢對,如果各位有興趣知道的話,2000到2020年最多球員受傷的部位是膝蓋,然後依次是腳踝,背部,腳掌,腿後肌(hamstring )
作者:
shala
(沙羅)
2020-03-07 10:02:00
只能用關鍵字抓吧
繼續閱讀
[問題] 請問Microsoft 98-381證照
renshin
Re: 老師我卡關了!求教
papple23g
老師我卡關了!求教
gundam778
Re: [問題] 關於迴圈問題
Hsins
[問題] 關於迴圈問題
hellokidding
[問題] xy平面點最短距離問題
oo855050
[問題]把以秒為單位獲得的數量,改以每小時累加
asps5711
[問題] 新手GPIO旋轉角度問題
jan5515
[問題] 新手請教兩份文件搜尋子字串問題
buenos
[問題] 內外表面法向量定向問題
oo855050
Links
booklink
Contact Us: admin [ a t ] ucptt.com