我试图了解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