python - 根据两列的相同值创建显示行之间配对的列
问题描述
我对如何做到这一点有点困惑。假设我在 python 中有一个这样的数据框。我将如何在python中创建代码,以便在A列中具有相同值并且在B列中也具有相同值的所有行将在第三列C中匹配。例如,如果两行在列中具有值1 A 并且它们在 B 列中具有相同的值,它们将在 C 列中组合在一起。因此,即使它们在 A 中具有相同的值,它们也必须在 B 中具有相同的值才能在同一组中。
input output
a b a b c
1 5 1 5 group 1
2 6 2 6 group 2
1 5 1 5 group 1
2 6 2 6 group 2
1 6 1 6 group 3
1 6 1 6 group 3
我知道我可以使用 np.where 做这样的事情,但这是一个很大的数据集,所以我想知道是否有更有效的方法来做这件事。在此先感谢,非常感谢任何帮助!
解决方案
使用集:
a = [1, 2, 1, 2, 1, 1]
b = [5, 6, 5, 6, 6, 6]
res = set()
for _a, _b in zip(a, b):
res.add((_a, _b))
print(res)
产量
{(1, 5), (2, 6), (1, 6)}
推荐阅读
- css - 路径不适合 SVG 内部
- java-8 - 列表列表和 Java 8
- javascript - 过渡效果香草 JS 和 CSS
- neo4j - 仅与特定节点有关系的匹配节点
- java - 在 SmarGWT FloatItem 上格式化
- android - Android 验证 RecycleView 中的项目
- java - 如何在 Android Listview 中登录网站并获取 json 数据?
- java - 为 IST 工作时,Java 日期解析不适用于 ET 时区
- python - 在 python 中使用 wand 打印图像的 RGB 值
- android - 如何在调用 doOnComplete 之前等待完成 doOnNext 中的所有任务?