难题:创建一个空数据结构
您渴望构造一个 DataFrame 并随后用时间序列数据填充它。最初,您设想一个空的 DataFrame,配有特定的列和时间戳,全部用零或 NaN 值装饰。
当前方法:不优雅的解决方案
您当前的代码初始化在迭代数据以计算新值之前,具有全零列和时间戳行的 DataFrame。虽然这种方法达到了其目的,但感觉很麻烦,建议存在更有效的解决方案。
首选解决方案:在列表中累积数据
优化此过程,谨慎的做法是避免 DataFrame 中的行增长。相反,将数据累积到列表中,然后在数据收集完成后初始化 DataFrame。列表更轻量,消耗更少的内存,并且有利于自动数据类型推断和索引分配。
data = [] for row in some_function_that_yields_data(): data.append(row) df = pd.DataFrame(data)
列表中累积的优点
要避免的已弃用方法
某些在新手用户中普遍存在的做法应该避免,因为它们效率低下并且细微差别:
以上是如何在填充时间序列数据之前高效地创建一个空 DataFrame?的详细内容。更多信息请关注PHP中文网其他相关文章!