【发布时间】:2021-08-24 17:03:02
【问题描述】:
这是一个熊猫数据框:
dt name type City
05-10-2021 MK [PQRRC, MNXYZ, AYPIC, KLUYT, GFTBE, BYPAC] NYC
05-10-2021 MK [GFTBE, AYPIC, MNXYZ, BYPAC, KLUYT, PQRRC] NYC
05-12-2021 MK [KLUYT, PQRRC, BYPAC, AYPIC, GFTBE, MNXYZ] NYC
05-12-2021 MK [BYPAC, KLUYT, GFTBE, AYPIC, MNXYZ, PQRRC] NYC
05-13-2021 PS [XYDFE, QRTSL, CPQLE, VXWUT, ORSHC, LTRDX] BAL
05-13-2021 PS [VXWUT, ORSHC, QRTSL, XYDFE, LTRDX, CPQLE] BAL
.... 请注意,每个列名称的列类型中的值列表是相同的,但不按字母顺序排序。
我希望输出如下:对列类型进行排序并找到不同的 dt、名称、类型、城市。
dt name type City
05-10-2021 MK [AYPIC, BYPAC, GFTBE, KLUYT, MNXYZ, PQRRC] NYC
05-12-2021 MK [AYPIC, BYPAC, GFTBE, KLUYT, MNXYZ, PQRRC] NYC
05-13-2021 PS [CPQLE, LTRDX, ORSHC, QRTSL, VXWUT, XYDFE] BAL
我尝试使用 sort_values、sorted、drop_duplicates;不工作。可能是我犯了一些错误。它完全删除了一些名称,这意味着在使用 drop_duplicates() 时丢失了一些名称。有人能帮我吗?谢谢。
【问题讨论】:
-
列表是否保证具有相同的值,或者是否需要将列表合并在一起的逻辑?
-
样本数据似乎有问题。前 2 个列表是不同的。第二有 2
AYPIC -
我们是否还需要检查列
type的重复项?似乎需要,对吧? -
对于每一列'name','type'列中的值列表是相同的,但没有按顺序排序。谢谢。
-
抱歉,已更正示例数据。无需检查“类型”列中的值列表中的重复项。只需对其进行排序并选择不同的值,如示例输出所示。
标签: python pandas list dataframe sorting