我有一个带德语评论的Panda Dataframe。我想得到POS标签,我找到了支持德语的模式lib。
现在,我想迭代Review列,获取所有POS但我得到以下错误(使用此代码):
如何迭代pandas列以获取POS标记
代码:
r['POSTags'] = parse(r['German_Reviews'].apply(split))
错误消息:
TypeError: expected string or buffer
我想有以下输出:
[(Das, DT), (Essen, NN), (war, VB), (lecker,..
有谁知道如何用模式库解决这个问题?
我的DF系列看起来像这样:
Rating | German_Reviews | Device ...
----------------------------------------------
5.0 | Das Essen war lecker | Mobile ...
1.0 | Die Pizza war grauenhaft | Desktop ...
4.0 | Das Restaurant war ok | Mobile ...
答案 0 :(得分:0)
也许这样的事情适合你的情况:
import pandas as pd
'''
Rating | German_Reviews | Device
5.0 | Das Essen war lecker | Mobile
1.0 | Die Pizza war grauenhaft | Desktop
4.0 | Das Restaurant war ok | Mobile
'''
df = pd.read_clipboard(sep = '|')
df.columns = df.columns.str.strip()
com = ['DT', 'NN', 'VB', '...']
df.German_Reviews.str.split().apply(lambda x : list(zip(x, com)))