我有两个清单
a = ["hi", "hello", "hey"]
b = ["Sam", "dean"]
和一个包含一列的数据框ques
df = pd.DataFrame({'ques':["<input1> This is <input2>", "<input1> Sir, Do you know <input2>?"]})
我想用<input1>列表元素a和列表元素替换并创建一组独特的问题。<input2>b
所以我的预期输出是:
['hi This is Sam',
'hi This is dean',
'hello This is Sam',
'hello This is dean',
'hey This is Sam',
'hey This is dean',
'hi Sir, Do you know Sam?',
'hi Sir, Do you know dean?',
'hello Sir, Do you know Sam?',
'hello Sir, Do you know dean?',
'hey Sir, Do you know Sam?',
'hey Sir, Do you know dean?']
我可以接受listor pandas column。
我试过的
from itertools import product
c = list(product(a,b))
ques = []
for q in df['ques']:
for i in c:
temp = q.replace("<input1>", i[0]).replace("<input2>", i[1])
ques.append(temp)
这给了我预期的结果,但我的数据太大,所以我正在寻找更有效的解决方案。