Python:将Dataframe转换为自然语言文本

Python: Convert Dataframe into a natural language text

我们正在实施 NLP 解决方案,我们有一堆段落文本和 tables。我们使用 google 的 Burt 进行 NLP,它在文本上效果很好。但是,如果我们提出的问题的答案是 table 值,那么我们的 nlp 解决方案将不起作用。因为它只适用于自然语言文本(句子、段落等)。

因此,为了从 table(数据框)中获得答案,我们正在考虑将整个数据框转换为自然语言文本,该文本保留每个单元格与其对应列名的关系,并且排。例如:

+------------+-----------+--------+--+
| First Name | Last Name | Gender |  |
+------------+-----------+--------+--+
| Ali        | Asad      | Male   |  |
| Sara       | Dell      | Female |  |
+------------+-----------+--------+--+

将成为:

这将帮助我们找到正确的答案,例如,如果我问“[=30= 的性别是什么]”,那么我们的 NLP 解决方案会给我们答案 'Male'。

我想知道 python 中是否有任何库可以将数据框转换为自然语言文本。还是我必须手动完成?

非常感谢

如果您想将其存储在列表中,您可以轻松做到

text=[]
for index,rows in df.iterrows():
  a='First Name is {0}, Last Name is {1} and Gender is {2}'.format(df['First Name'] 
  [index],df['Last Name'][index],df['Gender'][index])
  text.append(a)
print(text)

然后您可以将此列表转换为自然语言,以便模型能够理解。