作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
df = pd.DataFrame({'col1':['a-b', 'c-d', 'e-f', 'g-h', 'i-j', 'k-l','b-a', 'd-c', 'f-e', 'h-g', 'j-i', 'l-k']})
尽管顺序似乎颠倒了,但您有一个组合重叠的列。但是如何在另一侧添加另一列以实际显示它们是相同的,如下所示:
df2 = pd.DataFrame({'col1':['a-b', 'c-d', 'e-f', 'g-h', 'i-j', 'k-l','b-a', 'd-c', 'f-e', 'h-g', 'j-i', 'l-k']
,'col2':['a-b', 'c-d', 'e-f', 'g-h', 'i-j', 'k-l','a-b', 'c-d', 'e-f', 'g-h', 'i-j', 'k-l']})
真实的数据是alpha beta的顺序不可预测的,很头疼。
提前谢谢你。
最佳答案
map
with ord
并获取每一行的 sum
,然后是groupby()+transform('first')
:
f = df['col1'].str.split('-').explode().map(ord).sum(level=0)
df.assign(col2=df.groupby(f).transform('first'))
col1 col2
0 a-b a-b
1 c-d c-d
2 e-f e-f
3 g-h g-h
4 i-j i-j
5 k-l k-l
6 b-a a-b
7 d-c c-d
8 f-e e-f
9 h-g g-h
10 j-i i-j
11 l-k k-l
关于python - 如何在 Pandas 数据框中添加另一个配对列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61322281/
我是一名优秀的程序员,十分优秀!