python - 如何在python中的同一对象中返回列表中的唯一对(具有不同的顺序)
问题描述
我怎样才能得到表中的唯一对?
第 1 栏 | 第 2 栏 | 第 3 栏 |
---|---|---|
一个 | 一 | 乙 |
一个 | 一 | 乙 |
乙 | 一 | 一个 |
C | 一 | D |
乙 | 一 | F |
我想获得第 1 列和第 3 列的唯一对,并返回像 {'A&B','C&D','E&F'} 这样的值
解决方案
尝试unique
:
>>> (df['Col 1'] + '&' + df['Col 3']).unique()
array(['A&B', 'B&A', 'C&D', 'E&F'], dtype=object)
>>>
或者drop_duplicates
:
>>> (df['Col 1'] + '&' + df['Col 3']).drop_duplicates()
0 A&B
2 B&A
3 C&D
4 E&F
dtype: object
>>>
如果您对待A&B
与 相同B&A
,请尝试:
>>> df[['Col 1', 'Col 3']].agg(sorted, axis=1, result_type='expand').agg('&'.join, axis=1).unique()
array(['A&B', 'C&D', 'E&F'], dtype=object)
>>>
或者:
>>> df[['Col 1', 'Col 3']].agg(sorted, axis=1, result_type='expand').agg('&'.join, axis=1).drop_duplicates()
0 A&B
3 C&D
4 E&F
dtype: object
>>>
推荐阅读
- sql-server - 使用 Azure AD 时审核 SQL 表
- php - SQLSTATE [HY000]:一般错误:1364 字段“名字”没有默认值(SQL:插入“用户”(“电子邮件”)值(test@test.com))
- python - 如何避免模型在 keras Tensorflow 中变成层
- ios - CoreData派生属性查看一对多关系是否包含属性
- pandas - 在 Pandas 中操作列时出现内存错误
- java - Spring ApplicationEvent onApplicationEvent 方法
- python - 按文件扩展名 pandas 对值进行分组
- amazon-web-services - CLI - 由于配置错误,执行失败:Lambda 函数的权限无效
- python - 在 Django 模型的模板中显示键/值对
- ckan - CKAN 预览不起作用,但下载的 CSV 可以