Gensim Word2Vec模型浮点数

问题描述 投票:0回答:1

我已经使用gensim训练了word2vec模型。在模型矩阵中,某些值的浮点如下所示:“ -7.18556e-05”

我需要将矩阵上的值用作字符串。有没有办法删除那些“ e-05”,“ e-04”等?

import nltk
from gensim.models import Word2Vec
from nltk.corpus import stopwords

text = "My text is here"
sentences = nltk.sent_tokenize(text)
for i in range(len(sentences)):
    sentences[i] = [word for word in sentences[i] if word not in stopwords.words('english')]

model = Word2Vec(sentences, min_count=1)

words = model.wv.vocab

for word in words:
    matrix = model.wv[words.keys()]
python nlp nltk gensim
1个回答
0
投票

[请注意,这些科学符号打印输出是有效的字符串,并且Python和许多可能在输出中使用的读取例程将理解它们。

而且,当出于某些特定目的进行打印时,可以使用各种格式设置选项(包括注释中提到的.format()选项)来获取所需的确切信息。 (您尚未显示当前使用的触发矩阵/阵列显示的哪种方法,因此尚不清楚在关键的输出点上最好的改变显示的建议。)

而且:gensim和大多数相似库中的所有向量/矩阵通常由numpy提供,它具有更改显示选项的全局设置,包括用于完全停止这种表示法的suppress参数。请参阅其他答案以获取更多详细信息:

https://stackoverflow.com/a/2891805/130288

最终,您可能不希望在某个预先的时间和全局范围内依赖此设置,以在一个特定的有意位置获得所需的输出。为此,将使用更清晰,更强大的代码来显式格式化结果。但是作为快速解决方案,以上内容可能适合您的需求。

© www.soinside.com 2019 - 2024. All rights reserved.