【问题标题】:How could I create a column with matchin values from different datasets with different lengths如何创建具有来自不同长度的不同数据集的匹配值的列
【发布时间】:2021-12-12 20:55:18
【问题描述】:

我想在数据集中创建一个新列,其中将邮政编码分配给特定区域。

总共有 5 个区域。每个区域由x 数量的邮政编码组成。我想使用这两个不同的数据集来创建一个新列。

我已经尝试了一些代码,但是我失败了,因为该系列的标签不同。我应该如何解决这个问题?

我有两个数据集,其中一个有 1518 行 x 3 列,另一个有
46603 行 x 3 列。

如图所示:

  • df1 是第一个包含PostcodeRegio 列的数据集,它们是分配给相应Regio 的邮政编码。

  • df2 是第二个缺少Regio 列的数据集,如您所见。我想在 df2 数据集中添加一个新列,其中包含相应的Regio

希望有人能帮帮我。

亲切的问候。

【问题讨论】:

    标签: python pandas numpy dataset matching


    【解决方案1】:

    我相信您需要将数据帧 2 中的邮政编码映射到第一个数据帧中的区域列。假设 Postcode 和 ZipCode 相同。

    首先从 df1 创建一个字典,然后根据字典值替换邮政编码值

    zip_dict = dict(zip(df1.Postcode, df1.Regio))
    df2.ZipCode.replace(zip_dict)
    

    【讨论】:

    • 是的,没错。我会试试你的建议,希望它会奏效。
    • 不幸的是,此代码不适用于我面临的问题。还有其他人有建议吗?
    • 能分享一下错误截图吗
    • 其实我没有报错。我只创建了一个字典,但是,我不知道接下来的步骤应该是什么。我想在 df2 中使用相应的区域(如 df1)创建一个新列。 df1 实际上是数据集,仅用于将 Zip 与相应的 Regio 链接。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-19
    • 1970-01-01
    • 2022-09-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多