Constructing pandas DataFrame from values in variables gives "ValueError: If using all scalar values, you must pass an index"

dataframe, pandas, python, scalar, valueerror

Solution

The error message says that if you're passing scalar values, you have to pass an index. So you can either not use scalar values for the columns -- e.g. use a list:

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

or use scalar values and pass an index:

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

Problem

I have two variables as follows. ``` a = 2 b = 3 ``` I want to construct a DataFrame from this: ``` df2 = pd.DataFrame({'A':a, 'B':b}) ``` This generates an error: ``` ValueError: If using all scalar values, you must pass an index ``` I tried this also: ``` df2 = (pd.DataFrame({'a':a, 'b':b})).reset_index() ``` This gives the same error message. How do I do what I want?

Original source

Related problems