首页 > 解决方案 > 为什么我的数据框还是空的?

问题描述

我正在尝试从以下代码创建一个数据框,但它始终为空,我不知道为什么。有什么建议么?谢谢!

step_size = 0.01
start = [100]
iter_list = list(range(10000))

for i in iter_list:
    start.append(start[i] - step_size)

iter_list2 = list(range(len(start)))

variable_step = pd.DataFrame()

for i in iter_list2:
    variable_step[i] = ((start[i]*step_size)/100)

标签: pythondataframe

解决方案


看起来您可能对什么是数据框有某种混淆。您的代码似乎没有认识到 DataFrame 是具有行和列的二维数据结构。

当您这样做时variable_step[i] = ((start[i]*step_size)/100),您将在其中创建一个新列,variable_step其中列标签设置为 的当前值i,并将该列的每个元素初始化为((start[i]*step_size)/100),因为((start[i]*step_size)/100)它是一个标量。

以这种方式创建新列不会添加更多行。它只是为现有行添加了更多值——它们都是 0。您创建的每个新列的长度为 0,因为您从不创建行。

如果你想让我告诉你如何解决这个问题,好吧,我不能,因为我不知道你到底想做什么。


推荐阅读