【发布时间】:2015-04-25 10:51:21
【问题描述】:
我有一个 pandas 数据框对象,我预先分配了 400 000 个条目。 2 列 datetime.datetime 类型的时间戳和浮点数。 当我尝试在表中插入(覆盖)一行时,它似乎相当慢,具体取决于表的大小,我得到的时间类似于 0.044 秒。 我创建了一个整数索引,并且正在使用该索引来访问该行。 这是我使用它的方式:
maxsize = 400000
data = pd.DataFrame({'ts' : date_list, 'val' : zeros}, index=range(maxsize))
# later on, the next statement is "slow"
data.iloc[0] = pd.Series({'ts' : datetime.datetime.now(), 'val': val})
根据我的调查,最后一条语句在我的机器 (i7-4650U) 上大约需要 0.044 秒。 这似乎很慢。有什么我在做根本错误的事情吗? 我可以使用 HDF Store 之类的东西来提高写入速度,同时保持高读取速度吗?
谢谢。
【问题讨论】: