文本向量化这个概念应该是我第二次看到了,第一次看到的时候还是朴素贝叶斯对文本进行预测时预处理的时候,将文本转化为向量,很大程度上简化了问题的处理难度,向量化为矩阵将文本问题转为更为直接的数学问题,更是亮点所在。
我写了一个向量化的函数,也算是练练手。
import pandas as pd
def word2vec(verblist): #define input format should be list
#func1 find unique word and build matrix
uniquemat=set([])
for words in verblist:
uniquemat = uniquemat | set(words)
uniquemat=list(uniquemat)
#statistics for TF
vectormat=[]
for words in verblist:
vector=[0]*len(uniquemat)
for word in words:
if word in uniquemat:
vector[uniquemat.index(word)]+=1
vectormat.append(vector)
vectormat=pd.DataFrame(vectormat)
vectormat.columns=uniquemat
return(vectormat)
我们输入一个英文文本
运行
word2vec(word)
查看输出