关注
找到一份通过的代码,你们看看 #!/usr/bin/env python
import math
import random
import sys
class Solution2(object):
def tfidf(self, line, idf):
tf = {}
tfidf = []
data = []
words = line.split(",")
length = len(words)
for word in words:
tf[word] = tf.get(word, 0) + 1 / length
for word in words:
tfidf.append(str(round(tf.get(word) * idf.get(word), 2)))
data.append("tf:%s,idf:%s" % (tf.get(word), idf.get(word)))
return (tfidf)
def getWordDocs(self, docs):
N = len(docs)
idf = {}
for doc in docs:
words = set(doc.split(","))
for word in words:
idf[word] = idf.get(word, 0) + 1
for (k, v) in idf.items():
idf[k] = round(math.log(N / v, 2), 2)
return idf
if __name__ == "__main__":
solution2 = Solution2()
n = int(sys.stdin.readline().strip())
dd = []
for i in range(0, n):
dd.append(sys.stdin.readline().strip())
idf = solution2.getWordDocs(dd)
for item in dd:
tfidf = solution2.tfidf(item, idf)
print(",".join(tfidf))
查看原帖
点赞 3
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 十二月请对我好一点 #
7607次浏览 155人参与
# 父母对你找工作是助力还是阻力? #
2665次浏览 69人参与
# 工作中出现了XX情况正常吗 #
9243次浏览 111人参与
# 为了去实习,我赌上了___ #
2407次浏览 40人参与
# 哪一瞬间让你觉得“这班不如不上” #
2117次浏览 23人参与
# 聊聊我眼中的AI #
485448次浏览 6722人参与
# 一人推荐一个值得做的项目 #
2919次浏览 49人参与
# uu们,春招你还来吗? #
2044次浏览 25人参与
# 高薪高压 vs 低薪wlb,你怎么选? #
3651次浏览 42人参与
# 回顾今年你干过的最“勇”的一件事 #
4624次浏览 73人参与
# 工作前VS工作后,你的心态变化 #
3945次浏览 34人参与
# 秋招有哪些公司要求提前实习 #
91017次浏览 483人参与
# 公司福利里最没用的一项是啥 #
2498次浏览 56人参与
# 机械人的金三校招总结 #
38893次浏览 465人参与
# 如何用一句话描述你的职业 #
27944次浏览 180人参与
# 追觅科技求职进展汇总 #
28907次浏览 181人参与
# 职场上哪些事情令人讨厌 #
32381次浏览 143人参与
# 机械人的薪资开到多少,才适合去? #
150794次浏览 530人参与
# 你收到了团子的OC了吗 #
1469299次浏览 11805人参与
# 毕业季,给职场新人一些建议 #
161869次浏览 2366人参与