有谁知道当在 pandas DF 上使用 spacy 时,这种输出是正常的还是无害的(对于标签 pandas DF 列的后续计算)?
将 DF 文本列("fulltext")转换为 spacy-tokenized 文本列的代码。
df["text_tokenized"] = df["fulltext"].apply(lambda x: [y.text for y in sp_model(x)])
df["text_tokenized"] = df["text_tokenized"].apply(' '.join)
将 DF tokenized_text 列转换为 spacy 标签的代码。
df['TAG'] = df['text_tokenized'].apply(lambda x: [y.tag_ for y in sp_model(x)])
df['TAG'] = df['TAG'].apply(' '.join)
我也同样添加了 spacy 依赖关系、外稃和 pos-tags 的列。这些在jupyter notebook的输出中看起来很好,但由于某些原因,spacy标签看起来不对。我不知道是怎么回事。我想我已经删除了非ASCII字符 因为我认为这可能与此有关。令我不解的是,它只在某些情况下出现,绝对不是所有的情况。
根据详细的提取,DF中存储的数据应该没有问题。看起来这只是笔记本的输出问题。
编辑:这是笔记本输出中的mathjax问题:由于原始文本数据和间隔标签中包含了"$"这样的符号,mathjax认为下面的字符是数学公式,并试图进行转换,导致文本输出很奇怪。无论你处理的是数字还是文本输出,Mathjax都是默认启用的。我在这里找到了大部分的信息。https:/github.comipythonipythonissues4817