我的数据集如下。
col1 col2
cat rat Lion
children, geese,pantss man
这里我想将输入作为col1并生成所有可能的单数和复数col1值的组合,这些值是名词,否则保持该字符串不变并将这些组合附加到该特定输入字符串下面并放入/按原样重复相应的col2值。
我想要输出如下
col1 col2
cat rat Lion
cat rats Lion
cats rat Lion
cats rats Lion
children, geese, pantss man
children, geese, pants man
children, goose, pantss man
child, geese,pantss man
child, goose,pantss man
child, geese,pants man
我一直在为col1的单个值尝试下面的代码但是我无法多次迭代给定输入以生成可能的组合。你能不能请任何人帮助我如何实现输出。有没有python库可用。
from textblob import TextBlob
blob = TextBlob(df['col1'].ix[0])
sentence = blob.sentences[0]
print(sentence.tags)
print(len(sentence.tags))
main_lst = []
lst = []
for word, pos in sentence.tags:
print(word,pos)
if pos == 'NNS':
print(word.singularize())
lst.append(word.singularize())
elif pos == 'NN':
lst.append(word.pluralize())
print(lst)
else:
lst.append(word)
main_lst.append(lst)
df = df.append(pd.Series(main_lst, index=['c1']),ignore_index=True)
df['c1'].ix[1] = lst
df['c2'].ix[1] = df['Target'].ix[0]
谢谢, NIRANJAN