変数の値から DataFrame を構築すると、「ValueError: すべてスカラー値を使用する場合は、インデックスを渡す必要があります」というエラーが発生します。質問する

変数の値から DataFrame を構築すると、「ValueError: すべてスカラー値を使用する場合は、インデックスを渡す必要があります」というエラーが発生します。質問する

次のような 2 つの変数があります。

a = 2
b = 3

これから DataFrame を構築したいと思います:

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

これによりエラーが発生します:

ValueError: If using all scalar values, you must pass an index

これも試してみました:

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

同じエラー メッセージが表示されます。どうすれば目的の結果が得られますか?

ベストアンサー1

エラー メッセージには、スカラー値を渡す場合はインデックスを渡す必要があると書かれています。したがって、列にスカラー値を使用しないか、たとえばリストを使用するかのいずれかを選択できます。

>>> 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

おすすめ記事