这可能是一个简单的问题,但我不知道该怎么做。假设有两个变量。

a = 2
b = 3

我想从这个构建一个数据框架:

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

这会产生一个错误:

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

我也试过这个:

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

这将给出相同的错误消息。


当前回答

最简单的选项ls:

dict  = {'A':a,'B':b}
df = pd.DataFrame(dict, index = np.arange(1) )

其他回答

最简单的选项ls:

dict  = {'A':a,'B':b}
df = pd.DataFrame(dict, index = np.arange(1) )

只要把字典放在一个列表上:

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

首先你需要创造一个熊猫系列。第二步是将pandas系列转换为pandas数据框架。

import pandas as pd
data = {'a': 1, 'b': 2}
pd.Series(data).to_frame()

您甚至可以提供列名。

pd.Series(data).to_frame('ColumnName')

你可以试着把你的字典包装成一个列表:

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

输入不一定是一个记录列表,也可以是一个字典:

pd.DataFrame.from_records({'a':1,'b':2}, index=[0])
   a  b
0  1  2

这似乎相当于:

pd.DataFrame({'a':1,'b':2}, index=[0])
   a  b
0  1  2