从变量中的值构建pandas DataFrame会出现“ValueError: If using all scalar values, you must pass an index”错误。

14 浏览
0 Comments

从变量中的值构建pandas DataFrame会出现“ValueError: If using all scalar values, you must pass an index”错误。

这可能是一个简单的问题,但我无法想出如何解决。比方说,我有两个变量,如下:

a = 2
b = 3

我想从这些变量构建一个 DataFrame:

df2 = pd.DataFrame({'A':a,'B':b})

但这会生成一个错误:

ValueError:如果使用所有标量值,则必须传递索引

我也尝试过这种方法:

df2 = (pd.DataFrame({'a':a,'b':b})).reset_index()

但它会给出相同的错误信息。

admin 更改状态以发布 2023年5月21日
0
0 Comments

您可以尝试将您的字典包装成列表:

my_dict = {'A':1,'B':2}
pd.DataFrame([my_dict])


   A  B
0  1  2

0
0 Comments

错误消息称,如果你传递的是标量值,你必须传递一个索引。所以你可以选择不使用标量值作为列--例如使用一个列表:

>>> df = pd.DataFrame({'A': [a], 'B': [b]})
>>> df
   A  B
0  2  3

或者使用标量值并传递一个索引:

>>> df = pd.DataFrame({'A': a, 'B': b}, index=[0])
>>> df
   A  B
0  2  3

0