我试图将一个简单的numpy数组转换为pandas数据帧.
x是我的数组,nam是列名列表.
x = np.array([2,3,1,0])
nam = ['col1', 'col2', 'col3', 'col4']
我使用pd.DataFrame来转换x
y = pd.DataFrame(x, columns=nam)
ValueError: Shape of passed values is (1, 4), indices imply (4, 4)
我试图调整索引参数但我找不到解决方案.
我希望我的数据框看起来像这样:
col1 col2 col3 col4
2 3 1 0
解决方法:
你应该重塑你的输入数组:
In [6]: pd.DataFrame(x.reshape(1,4), columns=nam)
Out[6]:
col1 col2 col3 col4
0 2 3 1 0
或者更灵活一点:
In [11]: pd.DataFrame(x.reshape(len(x) // len(nam), len(nam)), columns=nam)
Out[11]:
col1 col2 col3 col4
0 2 3 1 0
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。