python - 如何合并两个数据框并消除欺骗
问题描述
我正在尝试将两个数据框合并在一起。一个有 150 万行,一个有 1500 万行。我期待合并的数据框有 15M 行,但它实际上有 178M 行!我认为我的合并是在做某种笛卡尔积,这不是我想要的。
这是我尝试过的,得到了 178M 行。
df_merged = pd.merge(left=df_nat, right=df_stack, how='inner', left_on='eno', right_on='eno')
我尝试了下面的代码并得到了内存不足的错误。
df_merged = pd.merge(df_nat, df_stack, how='inner', on='eno')
我猜这些数据框中有骗子,这导致最终的合并工作失败了。我该怎么做才能得到一个包含 15M 行的最终合并数据框?最后,模式不同,只有“eno”字段相同。
谢谢。
解决方案
推荐阅读
- aws-api-gateway - AWS-API 网关——jsonschema 子对象应该在父对象存在时进行验证
- mergesort - 归并排序和选择排序所需的比较总数
- java - Jax rs 控制器设置上传文件大小限制
- spring-integration - 为每个 Ftp 文件同时运行 Spring Integration 流程
- css - 如何禁用按钮单击样式css
- angular - Angular - 订阅中的函数从未在单元测试中调用
- reactjs - CustomHook -> useDispach = 找不到 react-redux 上下文值;请确保组件被包裹在一个
- reactjs - 打字稿没有捕捉到错误类型的道具
- continuous-integration - 如何有条件地运行 CI 阶段
- python - 如何替换列表中不需要的字符额外引号