gpt4 book ai didi

python - 比较两列中以逗号分隔的项目

转载 作者:太空宇宙 更新时间:2023-11-03 21:33:47 26 4
gpt4 key购买 nike

我有一个包含两列的表,A 列和 B 列。每列都有用逗号分隔的项目,如下所示。

enter image description here

我想创建第三列(C 列),它返回 A 列中存在但 B 列中不存在的项目

enter image description here

如果有任何帮助,我将不胜感激。

谢谢。

最佳答案

您可以使用集合交集。请注意,如果使用pandas,性能不会很好,但有可能

inter = ds.A.str.split(',').apply(set) - ds.B.str.split(',').apply(set).values
df['C'] = inter.str.join(',')

不过,我建议使用纯 Python 方法。

df['C'] = [','.join(set(a.split(',')) - set(b.split(','))) for a,b in zip(ds.A, ds.B)]

时间安排很明确

%timeit [','.join(set(a.split(',')) - set(b.split(','))) for a,b in zip(ds.A, ds.B)]
40.4 µs ± 1.08 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)

%timeit ds.A.str.split(',').apply(set) - ds.B.str.split(',').apply(set).values
730 µs ± 27 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)

关于python - 比较两列中以逗号分隔的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53364570/

26 4 0
文章推荐: c# - 显示 EDT 而不是 EST 的时区转换
文章推荐: c# - 字符串在 shamsi date fa-ir 中未被识别为有效的日期时间
文章推荐: c# - 使用保存到内存流的图像导出文件
文章推荐: c# - 将 List 绑定(bind)到 c# wpf 中的组合框