【发布时间】:2018-12-13 23:34:07
【问题描述】:
我有一本二元词词典,它被创建为
self.bigram_counts = defaultdict(lambda: Counter())
self.bigram_counts 中的 2 个样本行:
[(None, Counter({'de': 1})),
('de', Counter({'la': 7839,filtradojardin': 1,'cantera': 236})))]
尝试如下将其加载到数据框中似乎效率低下:
bigrams2 = pd.DataFrame.from_dict(list((vocab.bigram_counts.keys(),
vocab.bigram_counts.values().keys()),
vocab.bigram_counts.values().values()))
我想要这个数据框中的 2 列,一列包含完整的二元组,另一列包含计数。在这种情况下调用 pd.DataFrame 的最佳方式是什么?
以前,我用过:
bigrams = pd.DataFrame.from_dict(list(vocab.bigram_counts.items()))
bigrams.columns = [['word(s)', 'count(s)']]
bigrams.head()
这有效,但为计数列提供了一个计数器对象。我不认为 .melt() 在这里,但也许可以使用类似的东西?
期望的输出:
0 1
0 None, de 1
1 de, la 7839
2 de, filtradojardin 1
3 de, cantera 236
【问题讨论】:
-
你能给我们提供一个最小的、完整的和可验证的例子吗?这肯定会让我们更有效地帮助您。
-
现在添加了一些,希望这有效
标签: python pandas dataframe counter