kesci任務——公開新聞預測A股行業板塊動向,jieba分詞嘗試

import jieba
import jieba.analyse
import codecs
import pandas as pd 
import numpy as np

rows=pd.read_csv('/home/kesci/input/stockpredic_15501/20190506_NEWS.csv',header=0,encoding='utf-8',dtype=str)

from string import punctuation
import re
punc = punctuation + u'.,;《》?!“”‘’@#¥%…&×()——+【】{};;●,。&~、|\s::'
def re_bs(x):
    line = x
    line = re.sub(r"[{}]+".format(punc),"",str(line))
    line = re.sub(r'(\d)',"", line)
    x = line
    return x
    #去掉數字和標點
rows['content']=rows['content'].apply(re_bs)

stopwords = [line.strip() for line in codecs.open('/home/kesci/哈工大停用詞表.txt', 'r', 'utf-8').readlines()]

segments = []

def cutjieba(x):
    words = jieba.cut(x)
    splitedStr = ''
    for word in words:
        if word not in stopwords:
            # 記錄全局分詞
            segments.append({'word':word, 'count':1})
            splitedStr += word + ' '
            
rows['content'].apply(cutjieba)#應用分詞

dfSg = pd.DataFrame(segments)
dfWord = dfSg.groupby('word')['count'].sum()
dfWord = pd.DataFrame(dfWord)
dfWord.sort_values('count',ascending=False)
dfWord.to_csv()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章