微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 Pandas 数据框中找到一对多索引值的倒数

如何解决在 Pandas 数据框中找到一对多索引值的倒数

我有一个包含两个索引列 sourcetarget 的数据框。我想检测反向索引值,即对于一对值 (source,target),如果存在一对值 (target,source),则将 True 分配给名为 oneway 的新列。目标是检测单向道路。我从这篇文章中尝试过Detect presence of inverse pairs in two columns of a DataFrame

edges_gdf["oneway"] = edges_gdf.apply(
            lambda x: not edges_gdf[
                (edges_gdf["source"] == x["target"]) &
                (edges_gdf["target"] == x["source"]) &
                (edges_gdf.index != x.name)].empty,axis=1)

但是需要很多秒才能实现。我不想使用 df.iterrorws(),因为我有超过 10 万行。

有什么方法可以回答。

数据帧头

enter image description here

我的需要?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。