python - ValueError:计划形状未对齐 -> 使用 pd.concat() 时
问题描述
我发布这个问题是因为不幸的是,这个问题的先前答案并没有解决我的问题。
我正在尝试连接四个包含数值和日期索引列的数据框。所有数据框的日期索引列都相同,但某些列名不同。
示例(实际上有更多列,但这不应该有所作为):
df1 columns = ['DateIndex', 'A', 'B', 'C', 'D']
df2 columns = ['DateIndex', 'A', 'B', 'C', 'D', 'E', 'F', 'G']
df3 columns = ['DateIndex', 'Z', 'J', 'K']
df4 columns = ['DateIndex', 'B', 'I', 'M']
code: data = pd.concat([df1, df2, df3, df4], axis=0, join='outer')
然后我收到以下错误:
ValueError: Plan shapes are not aligned
我检查了所有数据框中的重复列名,并通过使用以下代码将它们设置为相同的值来检查不同的索引:
df1 = df1[df1.index.isin(df2.index)] -> (for every dataframe)
背景上下文:该命令曾经有效,但由于其中一个数据框的列已更改(从 10 列变为 47 列),因此我遇到了问题。
解决方案
推荐阅读
- npm-live-server - Live-Server 扩展 VS 代码不起作用
- python - 如何选择所有标签HTML
- amazon-web-services - Amazon RDS 和 VPC 终端节点连接
- vue.js - 具有计算属性的 href 中的值不是动态的
- docker - 如何在两个服务之间共享 docker 卷,其中一个是事实来源?
- python - 并行化pytorch中的嵌套for循环
- python - python:pyti平均真实范围函数输入的列表结构
- django - django rest框架知道视图是类还是函数
- php - 如何使用 Laravel 在数据库中搜索未知的属性名称
- dataweave - 无法在 dataweave 中转换 json 数组