Spark Jieba實現中文分詞

2021-10-07 21:36:49 字數 3965 閱讀 2850

本案例使用jieba分詞,jieba 是目前最好的 python 中文分詞元件,使用spark同樣也能實現中文分詞。實現步驟如下:

com.huaban

jieba-analysis

1.0.2

8920397333	王錚亮 時間都去哪了 《私人訂製》插曲

8920422333 影視-心上人啊快給我力量ktv(電影《神聖的使命》插曲

8920491333 068_奧特曼

8920492333 影視-幸福不會從天降ktv(電影《我們村里的年輕人》插

8920527333 鄧紫棋 gem 2013 x.x.x. live 演唱會 【全場高畫質】

8920529333 067_外婆的澎湖灣

8920588333 卓依婷-紙飛機

8920622333 073_小紅帽兒歌

8920623333 072_字母歌

8920624333 影視-星星知我心ktv(台灣電視劇集《星星知我心》主題曲

8920650333 2014蔡依林新年歌曲《新年喜洋洋》

8920702333 《love me》justin bieber感謝歌迷最新單曲

8920717333 075_只要媽媽露笑臉

8920731333 外婆的澎湖灣(電音dj舞曲)

8920745333 紐西蘭小伙,羅藝恒 加油 不插電現場版

8920787333 少女部落格2014迎新年首播mv《恭喜好運來》

8920791333 天路mv-韓紅

8920845333 初音未來pv【世界第一公主殿下】

8920849333 曼莉(dj電音舞曲)

8920888333 《我是歌手》第四場無歌單驚呆眾歌手!

8920909333 【mv首播】野人-even mv(完整hd版)

8920922333 影視新勢力 美女偶像 景甜 風--- 電影 戰國 主題曲

8920944333 【劉德華高畫質mv合集】真永遠 高畫質

8920956333 鄭源-難道愛乙個人有錯嗎[高畫質mv街](流暢)

8920982333 500.甄妮 魯冰花 演唱會 熱門mv mtv **高畫質排行榜

8921010333 少女時代 gee japanese ver

.................

object fenci )

})// sourcerdd.take(10).foreach(x => x.foreach(println))

/**結果

* 8920408333

* 8920422333

* 影視-心上人啊快給我力量ktv(電影《神聖的使命》插曲

* 8920491333

* 068_奧特曼

* 8920492333

* 影視-幸福不會從天降ktv(電影《我們村里的年輕人》插

* 8920527333

* 鄧紫棋 gem 2013 x.x.x. live 演唱會 【全場高畫質】

* 8920529333

* 067_外婆的澎湖灣

* 8920588333

* 卓依婷-紙飛機

* 8920622333

* 073_小紅帽兒歌

* 8920623333

* 072_字母歌

*/// 取陣列的第二個元素 內容

iter.map(x => )

})// contentrdd.take(10).foreach(println)

/*** 王錚亮 時間都去哪了 《私人訂製》插曲

* 影視-心上人啊快給我力量ktv(電影《神聖的使命》插曲

* 068_奧特曼

* 影視-幸福不會從天降ktv(電影《我們村里的年輕人》插

* 鄧紫棋 gem 2013 x.x.x. live 演唱會 【全場高畫質】

* 067_外婆的澎湖灣

* 卓依婷-紙飛機

* 073_小紅帽兒歌

* 072_字母歌

*/// 分詞

iter.map(x => )

})// fencirdd.take(10).foreach(println)

/*** [影視-心上人啊快給我力量ktv(電影《神聖的使命》插曲, 影視, 心上人, 快給我, 力量, ktv, 電影, 神聖, 使命, 插曲]

* [068_奧特曼, 068, 奧特曼]

* [影視-幸福不會從天降ktv(電影《我們村里的年輕人》插, 影視, 幸福, 不會, 天降, ktv, 電影, 我們, 村里, 年輕人]

* [鄧紫棋 gem 2013 x.x.x. live 演唱會 【全場高畫質】, 鄧紫棋, gem, 2013, . , live, 演唱會, 【, 全場, 高畫質]

* [067_外婆的澎湖灣, 067, 外婆, 澎湖灣]

* [卓依婷-紙飛機, 卓依婷, 紙飛機]

* [073_小紅帽兒歌, 073, 小紅帽, 兒歌]

* [072_字母歌, 072, 字母]

*/// 輸出格式整理

iter.map(x => )

})resultrdd.take(10).foreach(println)

/*** [王錚亮 時間都去哪了 《私人訂製》插曲, 錚亮, 時間, 《, 私人, 訂製, 插曲]

* [影視-心上人啊快給我力量ktv(電影《神聖的使命》插曲, 影視, 心上人, 快給我, 力量, ktv, 電影, 神聖, 使命, 插曲]

* [068_奧特曼, 068, 奧特曼]

* [影視-幸福不會從天降ktv(電影《我們村里的年輕人》插, 影視, 幸福, 不會, 天降, ktv, 電影, 我們, 村里, 年輕人]

* [鄧紫棋 gem 2013 x.x.x. live 演唱會 【全場高畫質】, 鄧紫棋, gem, 2013, . , live, 演唱會, 【, 全場, 高畫質]

* [067_外婆的澎湖灣, 067, 外婆, 澎湖灣]

* [卓依婷-紙飛機, 卓依婷, 紙飛機]

* [073_小紅帽兒歌, 073, 小紅帽, 兒歌]

* [072_字母歌, 072, 字母]

*/sc.stop()

} def f1(x:string):array[string] =

/*** 分詞方法

* @param x

* @return

*/def fenci_func(x:string): util.arraylist[string] =

})ls

}}

/**

* 使用process()結果是列表套列表,裡面的每個小列表中元素依次是

* [分好的詞, 分好的詞的第乙個字元在文字字元陣列的索引, 分好的詞的最後乙個字元在文字字元陣列的索引的下乙個索引]

* index:精準的切開,用於對使用者查詢詞分詞;

* search:長詞再切分,提高召回率。

* 可以看到核心在於:

* 1、內部包含乙個字典

* 2、分詞邏輯

* 3、不同模式的切分粒度

*/val str = "北京大學生活動中心"

val ss = new jiebasegmenter().sentenceprocess(str).tostring

// [北京, 大學生, 活動中心]

val ss2 = new jiebasegmenter().process(str, segmode.index).tostring

// [[北京, 0, 2], [大學, 2, 4], [學生, 3, 5], [大學生, 2, 5], [活動, 5, 7], [中心, 7, 9], [活動中心, 5, 9]]

val ss3 = new jiebasegmenter().process(str, segmode.search).tostring

// [[北京, 0, 2], [大學生, 2, 5], [活動中心, 5, 9]]

Python Jieba中文分詞工具實現分詞功能

程式功能及簡介 安裝和測試python下的中文分詞工具 開發時長 0.5個工作日。開發要求及分析 在python下可以採用的較好的中文分詞工具是結巴中文分詞和中科院的分詞系統,現就jieba中文分詞使用功能做一些 一 操作步驟 1 安裝結巴中文分詞工具 在32位,windows7 pycharm,a...

linux 實現中文

linux 安裝完後,中文字型整體感覺很虛,雖然不想幹嘛,但上網這樣看字也真不習慣.需要手動美化一下.自己安裝字型很麻煩,因為 linux 字型顯示引擎可不是像 windows 裡面複製一下字型就可以用那麼容易.況且就算安裝了windows的字型,其顯示起來都顯得粗糙,因此為了美觀,需要對linux...

sphinx中文索引實現中文檢索

介紹 2 sphinx使用的好處 快速檢索使用者需要的模糊資訊 替代like使用 本身還有中文 分詞 的實現,英文分詞通過 空格 區分,中文分詞通過技術實現 例如 匹配 使用習慣 sphinx是專業做資料檢索的乙個技術使用者去sphinx做模糊查詢,查詢 北京 相關的資訊,sphinx把 北京西二旗...