幾種簡單的文本數(shù)據(jù)預(yù)處理方法

下載數(shù)據(jù):
http://www.gutenberg.org/cache/epub/5200/pg5200.txt

將開頭和結(jié)尾的一些信息去掉廓俭,使得開頭如下:

One morning, when Gregor Samsa woke from troubled dreams, he found himself transformed in his bed into a horrible vermin.

結(jié)尾如下:

And, as if in confirmation of their new dreams and good intentions, as soon as they reached their destination Grete was the first to get up and stretch out her young body.

保存為:metamorphosis_clean.txt

加載數(shù)據(jù):

filename = 'metamorphosis_clean.txt'
file = open(filename, 'rt')
text = file.read()
file.close()

1. 用空格分隔:

words = text.split()
print(words[:100])

# ['One', 'morning,', 'when', 'Gregor', 'Samsa', 'woke', 'from', 'troubled', 'dreams,', 'he', ...]

2. 用 re 分隔單詞:
和上一種方法的區(qū)別是侦副,'armour-like' 被識(shí)別成兩個(gè)詞 'armour', 'like'莫辨,'"What's' 變成了 'What', 's'

import re
words = re.split(r'\W+', text)
print(words[:100])

3. 用空格分隔并去掉標(biāo)點(diǎn):
string 里的 string.punctuation 可以知道都有哪些算是標(biāo)點(diǎn)符號岸梨,
maketrans() 可以建立一個(gè)空的映射表,其中 string.punctuation 是要被去掉的列表,
translate() 可以將一個(gè)字符串集映射到另一個(gè)集,
也就是 'armour-like' 被識(shí)別成 'armourlike'巴柿,'"What's' 被識(shí)別成 'Whats'

words = text.split()
import string
table = str.maketrans('', '', string.punctuation)
stripped = [w.translate(table) for w in words]
print(stripped[:100])

4. 都變成小寫:
當(dāng)然大寫可以用 word.upper()。

words = [word.lower() for word in words]
print(words[:100])

安裝 NLTK:
nltk.download() 后彈出對話框死遭,選擇 all广恢,點(diǎn)擊 download

import nltk
nltk.download()

5. 分成句子:
用到 sent_tokenize()

from nltk import sent_tokenize
sentences = sent_tokenize(text)
print(sentences[0])

6. 分成單詞:
用到 word_tokenize,
這次 'armour-like' 還是 'armour-like'呀潭,'"What's' 就是 'What', "'s",

from nltk.tokenize import word_tokenize
tokens = word_tokenize(text)
print(tokens[:100])

7. 過濾標(biāo)點(diǎn):
只保留 alphabetic钉迷,其他的濾掉,
這樣的話 “armour-like” 和 “‘s” 也被濾掉了蜗侈。

from nltk.tokenize import word_tokenize
tokens = word_tokenize(text)
words = [word for word in tokens if word.isalpha()]
print(tokens[:100])

8. 過濾掉沒有深刻含義的 stop words:
在 stopwords.words('english') 可以查看這樣的詞表篷牌。

from nltk.corpus import stopwords
stop_words = set(stopwords.words('english'))
words = [w for w in words if not w in stop_words]
print(words[:100])

9. 轉(zhuǎn)化成詞根:
運(yùn)行 porter.stem(word) 之后,單詞會(huì)變成相應(yīng)的詞根形式踏幻,例如 “fishing,” “fished,” “fisher” 會(huì)變成 “fish”

from nltk.tokenize import word_tokenize
tokens = word_tokenize(text)

from nltk.stem.porter import PorterStemmer
porter = PorterStemmer()
stemmed = [porter.stem(word) for word in tokens]
print(stemmed[:100])

學(xué)習(xí)資源:
http://blog.csdn.net/lanxu_yy/article/details/29002543
https://machinelearningmastery.com/clean-text-machine-learning-python/


推薦閱讀 歷史技術(shù)博文鏈接匯總
http://www.reibang.com/p/28f02bb59fe5
也許可以找到你想要的:
[入門問題][TensorFlow][深度學(xué)習(xí)][強(qiáng)化學(xué)習(xí)][神經(jīng)網(wǎng)絡(luò)][機(jī)器學(xué)習(xí)][自然語言處理][聊天機(jī)器人]

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末枷颊,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子该面,更是在濱河造成了極大的恐慌夭苗,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,941評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件隔缀,死亡現(xiàn)場離奇詭異题造,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)猾瘸,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評論 3 395
  • 文/潘曉璐 我一進(jìn)店門界赔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來丢习,“玉大人,你說我怎么就攤上這事淮悼「赖停” “怎么了?”我有些...
    開封第一講書人閱讀 165,345評論 0 356
  • 文/不壞的土叔 我叫張陵袜腥,是天一觀的道長见擦。 經(jīng)常有香客問我,道長羹令,這世上最難降的妖魔是什么鲤屡? 我笑而不...
    開封第一講書人閱讀 58,851評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮福侈,結(jié)果婚禮上酒来,老公的妹妹穿的比我還像新娘。我一直安慰自己癌刽,他們只是感情好役首,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,868評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著显拜,像睡著了一般。 火紅的嫁衣襯著肌膚如雪爹袁。 梳的紋絲不亂的頭發(fā)上远荠,一...
    開封第一講書人閱讀 51,688評論 1 305
  • 那天,我揣著相機(jī)與錄音失息,去河邊找鬼譬淳。 笑死,一個(gè)胖子當(dāng)著我的面吹牛盹兢,可吹牛的內(nèi)容都是我干的邻梆。 我是一名探鬼主播,決...
    沈念sama閱讀 40,414評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼绎秒,長吁一口氣:“原來是場噩夢啊……” “哼浦妄!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起见芹,我...
    開封第一講書人閱讀 39,319評論 0 276
  • 序言:老撾萬榮一對情侶失蹤剂娄,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后玄呛,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體阅懦,經(jīng)...
    沈念sama閱讀 45,775評論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年徘铝,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了耳胎。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片惯吕。...
    茶點(diǎn)故事閱讀 40,096評論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖怕午,靈堂內(nèi)的尸體忽然破棺而出混埠,到底是詐尸還是另有隱情,我是刑警寧澤诗轻,帶...
    沈念sama閱讀 35,789評論 5 346
  • 正文 年R本政府宣布钳宪,位于F島的核電站,受9級特大地震影響扳炬,放射性物質(zhì)發(fā)生泄漏吏颖。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,437評論 3 331
  • 文/蒙蒙 一恨樟、第九天 我趴在偏房一處隱蔽的房頂上張望半醉。 院中可真熱鬧,春花似錦劝术、人聲如沸缩多。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽衬吆。三九已至,卻和暖如春绳泉,著一層夾襖步出監(jiān)牢的瞬間逊抡,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評論 1 271
  • 我被黑心中介騙來泰國打工零酪, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留睡毒,地道東北人科侈。 一個(gè)月前我還...
    沈念sama閱讀 48,308評論 3 372
  • 正文 我出身青樓艰亮,卻偏偏與公主長得像离钝,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子月腋,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,037評論 2 355

推薦閱讀更多精彩內(nèi)容