如何将normalize函数应用于pandas字符串系列?

时间:2015-08-01 21:18:35

标签: python pandas unicode

我想将以下函数应用于数据集系列:

unicodedata.normalize('NFKD', c.lower().decode('utf-8')).encode('ascii','ignore')

我(有点)理解我如何能做db.cname.str.lower()这样的事情,但是我无法在字符串访问器之后推广到任何其他函数。

如何将normalize功能应用于该系列的所有成员?

1 个答案:

答案 0 :(得分:4)

如果c是您的字符串列。 map用于以元素方式应用函数(当然,您不必像这样将它们全部链接在一起)

df[c] = (df[c].str.lower()
              .str.decode('utf-8')
              .map(lambda x: unicodedata.normalize('NFKD', x))
              .str.encode('ascii', 'ignore'))