【发布时间】:2017-05-01 04:42:01
【问题描述】:
earnings = self.collection.find({}) #return 60k documents
----
data_dic = {'score': [], "reading_time": [] }
for earning in earnings:
data_dic['reading_time'].append(earning["reading_time"])
data_dic['score'].append(earning["score"])
----
df = pd.DataFrame()
df['reading_time'] = data_dic["reading_time"]
df['score'] = data_dic["score"]
--- 之间的代码需要 4 秒才能完成。如何改进此功能?
【问题讨论】:
-
一种可能性是预先分配 data_dic 中的每个列表,然后简单地更改特定索引处的元素,而不是不断地附加到列表中。此外,如果您有多个内核可供使用,您可以引入多线程。
标签: python mongodb pandas pymongo