我正在尝试创建以下数据帧
new_df = pd.DataFrame(data = percentage_default, columns =
df['purpose'].unique())
我使用的变量如下
percentage_default = [0.15238817285822592,
0.11568938193343899,
0.16602316602316602,
0.17011128775834658,
0.2778675282714055,
0.11212814645308924,
0.20116618075801748]
df['purpose'].unique = array(['debt_consolidation', 'credit_card', 'all_other',
'home_improvement', 'small_business', 'major_purchase',
'educational'], dtype=object)
尝试创建此数据帧时,出现以下错误:
Shape of passed values is (1, 7), indices imply (7, 7)
在我看来,价值观和价值观的形状是一样的。有人能解释一下我遗漏了什么吗?你知道吗
谢谢!你知道吗
您正在从列表创建数据帧。调用
pd.DataFrame(your_list)
时,如果您的列表是一个简单的同质列表,则会为该列表中的每个元素创建一行。供您输入:熊猫将创建如下数据帧:
因此,您的数据帧只有一列。您正在尝试传递多个列名,这让熊猫感到困惑。你知道吗
如果希望从包含多列的列表创建数据帧,则需要在原始列表中嵌套更多的列表或元组。每个嵌套的元组/列表将成为dataframe中的一行,嵌套的元组/列表中的每个元素将成为一个新列。看这个:
我们在这个列表中有一个嵌套元组,所以我们的数据帧将有一行n列,其中n是嵌套元组中的元素数(7)。然后我们可以传递您的7个列名:
尝试用下一种方式重写数据:
https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.html
相关问题 更多 >
编程相关推荐