我试图了解Python中的gensim包如何实现Latent Dirichlet Allocation.我正在做以下事情:
定义数据集
documents = ["Apple is releasing a new product",
"Amazon sells many things",
"Microsoft announces Nokia acquisition"]
Run Code Online (Sandbox Code Playgroud)
删除停用词后,我创建了字典和语料库:
texts = [[word for word in document.lower().split() if word not in stoplist] for document in documents]
dictionary = corpora.Dictionary(texts)
corpus = [dictionary.doc2bow(text) for text in texts]
Run Code Online (Sandbox Code Playgroud)
然后我定义了LDA模型.
lda = gensim.models.ldamodel.LdaModel(corpus=corpus, id2word=dictionary, num_topics=5, update_every=1, chunksize=10000, passes=1)
Run Code Online (Sandbox Code Playgroud)
然后我打印主题:
>>> lda.print_topics(5)
['0.181*things + 0.181*amazon + 0.181*many + 0.181*sells + 0.031*nokia + 0.031*microsoft + 0.031*apple + 0.031*announces + 0.031*acquisition + 0.031*product', '0.077*nokia + …
Run Code Online (Sandbox Code Playgroud) 当我写命令
sudo apt-get install mysql-server-5.5
Run Code Online (Sandbox Code Playgroud)
我收到以下错误消息
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package mysql-server-5.5
E: Couldn't find any package by regex 'mysql-server-5.5'
Run Code Online (Sandbox Code Playgroud)
请告诉我如何删除它?
我想为我的简单数学游戏添加一个计时器。到目前为止,一切正常,用户在按下按钮时会提出问题,并获得有关答案的反馈。我想为用户添加一个计时器,以查看响应乘法所需的时间。这是本数学游戏原型的最后一部分。我希望计时器在用户单击“ nytt tal”(表示瑞典的新数字)时启动,并在用户单击“ svar”(表示瑞典语的答案)时停止。这是我的代码。
从Tkinter进口* 导入tkMessageBox 随机导入 导入时间 导入系统 #定义给用户的问题 def fraga1(): 全局num3 num3 = random.randint(1,10) 全局num4 num4 = random.randint(1,10) 全局svar1 svar1 = num3 * num4 label1.config(text ='Vad blir'+ str(num3)+'*'+ str(num4)+'?') entry1.focus_set() #根据答案给出答案的答案 def svar1(): mainAnswer = entry1.get() 如果len(mainAnswer)== 0: tkMessageBox.showwarning(message ='Skriv innågranummer!') 返回 如果int(mainAnswer)!= svar1: tkMessageBox.showwarning(message ='Tyvärrdeträttasvaret:'+ str(svar1)) 其他: tkMessageBox.showinfo(message ='RÄTT!! :)') #退出按钮定义 def quit(): 全球根 root.destroy() #此部分计时器的定义无效 def start(): 全局count_flag fraga1() count_flag = True 计数= 0.0 而True: 如果count_flag == False: 打破 label ['text'] = str(count) time.sleep(0.1) root.update() 计数+ …
我最近接受了一家知名硅谷公司的采访.我被要求用O(n)时间复杂度编写以下问题的代码.
编写一个给定整数数组的函数.如果任何值在数组中出现至少两次,它应该返回true,如果每个元素都是不同的,它应该返回false.
问题的关键是使用哈希映射.我在python中编写了以下代码:
def containsDuplicate(arr):
hashi={}
for i in arr:
try:
hashi[i]+=1
return 1
except KeyError:
hashi[i]=1
return 0
Run Code Online (Sandbox Code Playgroud)
整体访谈进展顺利,我能够找出所有问题的最佳解决方案(有效的解决方案).后来我从公司收到一封邮件,说我不是这个职位的最佳匹配.当被问及拒绝的原因时,我被告知要编写我的编码风格.
当人们说我需要改进我的编码风格时,人力资源意味着什么?为上述问题编写解决方案的最佳方法是什么?
在再次阅读代码后,我认为甚至没有必要这样做hashi[i]+=1
.只是return 1
已经足够了,但我不认为他们仅仅因为我的编码中的这个小错误而拒绝了我.
python ×3
python-2.7 ×2
arrays ×1
coding-style ×1
dirichlet ×1
gensim ×1
hashmap ×1
linux ×1
mysql ×1
regex ×1
timer ×1
tkinter ×1
ubuntu-12.04 ×1