You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在pandas中生成所有类别组合并填充对应的相同值

实现方案

可以通过拼接原数据与交换V1、V2列后的数据集实现需求,全程为pandas矢量化操作,没有显式循环,处理大数据量时效率很高。

完整实现代码

import pandas as pd

# 构造原始数据
df1 = pd.DataFrame({'V1':['A','A','B'],
                   'V2':['B','C','C'],
                   'Value':[4, 1, 5]})

# 核心逻辑:交换V1和V2列,和原表拼接
df_swap = df1.rename(columns={'V1':'V2', 'V2':'V1'})
df2 = pd.concat([df1, df_swap], ignore_index=True)
# 如果需要匹配示例的输出顺序,增加下面这行排序即可
df2 = df2.sort_values('Value', ignore_index=True)

print(df2)

输出结果

V1V2Value
AC1
CA1
AB4
BA4
BC5
CB5

如果你的原始数据存在双向重复的配对,可在拼接后增加df2 = df2.drop_duplicates()去重即可。


内容的提问来源于stack exchange,提问作者ARAT

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 19:24:03