Учитывая следующее:
s1 = pd.Series(["onee", "twoo", "threee", "fourr"])
s2 = pd.Series(["one", "two"])
Как найти s3
как [True, True, False, False]
.
Это определяется для каждого элемента в s1
, если элемент из s2
- это подстрока, соответствующая элементу в s3
должна быть True
.
Примечание. Размеры списка могут варьироваться, поэтому решение, которое зависит от наличия заданного количества элементов в s2
не жизнеспособен.
У меня есть следующее, которое, я думаю, работает, но я не думаю, что это очень хорошее решение
s1 = pd.Series(["onee", "twoo", "threee", "fourr"])
s2 = pd.Series(["one", "two"])
res = []
for s_2 in s2:
for s_1 in s1:
if s_2 in s_1:
res.append(1)
else:
res.append(0)
solution = np.array(res).reshape((2, len(s1))).sum(axis=0)
, которое приводит к
array([1, 1, 0, 0])