gpt4 book ai didi

python - 我如何测试有序子集

转载 作者:太空宇宙 更新时间:2023-11-04 00:44:56 24 4
gpt4 key购买 nike

首先
我需要能够测试 'abc''axbyc' 的有序子集,而 'egd' 不是'边缘'。另一种说法是,如果我可以删除一个字符串的特定字符并使其等于另一个字符串,则它是一个有序子集。

其次
我需要将一个 pd.Series 与另一个 pd.Series 进行比较,以确定一个的元素是否是另一个的相应元素的有序子集。

考虑 pd.Series s1s2

s1 = pd.Series(['abc', 'egd'])
s2 = pd.Series(['axbyc', 'edg'])

我需要比较它们,这样问题的结果
s1 的元素是否为 s2 的有序子集

0     True
1 False
dtype: bool

最佳答案

对于问题的第一部分:

def ordered_subset(s1, s2):
s2 = iter(s2)
try:
for c in s1:
while next(s2) != c:
pass
else:
return True
except StopIteration:
return False

对于问题的第二部分:

pd.concat([s1, s2], axis=1).apply(lambda x: ordered_subset(*x), axis=1)

0 True
1 False
dtype: bool

关于python - 我如何测试有序子集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40121871/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com