首页 > 编程语言 >python3如何构建文本向量

python3如何构建文本向量

时间:2023-02-06 18:06:56浏览次数:41  
标签:word 抱紧 rep counter python3 words print 文本 向量


import re
import collections

words = '''
钟声响起归家的讯号
在他生命里
仿佛带点唏嘘
黑色肌肤给他的意义
是一生奉献 肤色斗争中
年月把拥有变做失去
疲倦的双眼带着期望
今天只有残留的躯壳
迎接光辉岁月
风雨中抱紧自由
一生经过彷徨的挣扎
自信可改变未来
问谁又能做到
可否不分肤色的界限
愿这土地里
不分你我高低
缤纷色彩闪出的美丽
是因它没有
分开每种色彩
年月把拥有变做失去
疲倦的双眼带着期望
今天只有残留的躯壳
迎接光辉岁月
风雨中抱紧自由
一生经过彷徨的挣扎
自信可改变未来
问谁又能做到
今天只有残留的躯壳
迎接光辉岁月
风雨中抱紧自由
一生经过彷徨的挣扎
自信可改变未来
问谁又能做到
今天只有残留的躯壳
迎接光辉岁月
风雨中抱紧自由
一生经过彷徨的挣扎
自信可改变未来
问谁又能做到
今天只有残留的躯壳
迎接光辉岁月
风雨中抱紧自由
一生经过彷徨的挣扎
自信可改变未来
'''

'替换\n 和空格'


rep = {'\n':'',' ':''}
rep = dict((re.escape(k), v) for k, v in rep.items())
pattern = re.compile("|".join(rep.keys()))
origin_words = pattern.sub(lambda m: rep[re.escape(m.group(0))], words)
print(origin_words)

counter = collections.Counter(origin_words)
print(counter)
#Counter({'的': 16, '自': 10, '有': 8, '生': 7, '月': 7, '变': 7, '一': 6, '中': 6, '做': 6, '可': 6, '色': 5, '今': 5, '天': 5, '只': 5, '残': 5, '留': 5, '躯': 5, '壳': 5, '迎': 5, '接': 5, '光': 5, '辉': 5, '岁': 5, '风': 5, '雨': 5, '抱': 5, '紧': 5, '由': 5, '经': 5, '过': 5, '彷': 5, '徨': 5, '挣': 5, '扎': 5, '信': 5, '改': 5, '未': 5, '来': 5, '问': 4, '谁': 4, '又': 4, '能': 4, '到': 4, '带': 3, '肤': 3, '分': 3, '他': 2, '里': 2, '是': 2, '年': 2, '把': 2, '拥': 2, '失': 2, '去': 2, '疲': 2, '倦': 2, '双': 2, '眼': 2, '着': 2, '期': 2, '望': 2, '不': 2, '彩': 2, '钟': 1, '声': 1, '响': 1, '起': 1, '归': 1, '家': 1, '讯': 1, '号': 1, '在': 1, '命': 1, '仿': 1, '佛': 1, '点': 1, '唏': 1, '嘘': 1, '黑': 1, '肌': 1, '给': 1, '意': 1, '义': 1, '奉': 1, '献': 1, '斗': 1, '争': 1, '否': 1, '界': 1, '限': 1, '愿': 1, '这': 1, '土': 1, '地': 1, '你': 1, '我': 1, '高': 1, '低': 1, '缤': 1, '纷': 1, '闪': 1, '出': 1, '美': 1, '丽': 1, '因': 1, '它': 1, '没': 1, '开': 1, '每': 1, '种': 1})


#对每个字 从出现的次数 从小到大的排序
counter_pairs = sorted(counter.items(), key=lambda x:-x[1])
print(counter_pairs)

#对字和出现的次数进行分割
words,_ = zip(*counter_pairs)
print(words)

#对每个字进行编码
word_int_map = dict(zip(words, range(len(words))))
print(word_int_map)


#对文本构建文本向量
word_vector = [list(map(lambda word: word_int_map.get(word, len(words)), origin_words))]
print(word_vector)

 

标签:word,抱紧,rep,counter,python3,words,print,文本,向量
From: https://blog.51cto.com/u_15955675/6040025

相关文章

  • python3中zip详解
    描述zip()函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象......
  • Python3 ImportError: No module named '_tkinter'
    Traceback(mostrecentcalllast):File"<stdin>",line1,in<module>File"/usr/local/lib/python3.5/tkinter/__init__.py",line35,in<module>import_tkinter#......
  • python怎么获取向量中非零元素的行号
    假设A为向量 :行向量的时候,需要转化为列向量  A.TA为列向量的时候,不需要转化了解下numpy中的nonzero()函数np.nonzero(arrayormmatrix)返回非零的行标,和列标......
  • 支持向量机SMO--05
    ......
  • CSS文本颜色和大小写转化
    CSS有很多用于格式化文本的属性。比如,文本的颜色、大小写转化、对齐方式、文本间距、文本装饰等等。(此时会同时演示几个案例)首先,我们来介绍CSS如何为文本添加颜色。通过声......
  • N-GRAM文本挖掘
    N-GRAM介绍:N-Gram是基于一个假设:第n个词出现与前n-1个词相关,而与其他任何词不相关。(隐马尔科夫当中的假设。)整个句子出现的概率就等于各个词出现的概率乘积。各个词的概率......
  • MySQL(十)操纵表及全文本搜索
    一、创建表MySQL不仅用于表数据操作,还可以用来执行数据库和表的所有操作,包括表本身的创建和处理。创建表一般有如下两种方式:①使用具有交互式创建和管理表的工具;②直接使用M......
  • Python3排序sorted(key=lambda)
    Python3排序sorted(key=lambda)简述:假如d是一个由元组构成的列表,我们需要用到参数key,也就是关键词,看下面这句命令,lambda是一个隐函数,是固定写法,不要写成别的单词;x表示列......
  • markdown文本的常见编辑快捷键
    ##标题#+一级标题##+二级标题###+三级标题####+四级标题 ##字体风格样式**字体粗体** *字体斜体* ***字体斜体加粗体***~~废弃字体~~ #......
  • 新闻文本爬取——以央广网为例
    目录crawlingcrawling1.xcrawling1.0crawling2.xcrawling2.0crawling2.1crawling3.xcrawling3.0crawling3.1crawling3.2crawling3.3crawlingcrawling1.xcrawling1.0imp......