在R

时间:2016-09-16 17:46:54

标签: r dataframe duplicates psql topicmodels

我正在使用R包在topicmodels中基于推文创建主题模型。

我想创建一个包含主题模型中所有结果的数据框,以便我可以将其插入到数据库中。我就是这样做的:

# create dataframe with relevant results
topics <- as.data.frame(ldaTopics@gamma)
topics$id <- as.character(ldaTopics@documents)
topics$topic <- topics(ldaTopics)

# reorder columns to match table structure in database
reordered_topics <- topics[,c(6, 1, 2, 3, 4, 5, 7)]

# write results to db
dbWriteTable(con, "topics",  value = reordered_topics, append = TRUE, row.names = FALSE)

现在我的问题:当我将数据帧写入数据库时​​,我得到错误,即有重复的ID:

  

RS-DBI驱动程序:(无法检索结果:错误:重复键   值违反唯一约束“topics_pkey”DETAIL:Key(id)=(1)   已经存在。背景:COPY主题,第1行

这很奇怪,因为我已经检查了id的确实在多大程度上与`SELECT COUNT(DISTINCT id)FROM tweets;。返回的数字与选择整个表中的所有ID相同。

我认为将topicmodels结果合并到数据框中的方法出了问题。但我无法弄清楚发生了什么。有谁知道这里发生了什么?

0 个答案:

没有答案