pythonpandasdataframevalueerrorscalar

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


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?


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