【发布时间】:2015-10-24 07:43:24
【问题描述】:
我想将以下函数应用于数据框系列:
unicodedata.normalize('NFKD', c.lower().decode('utf-8')).encode('ascii','ignore')
我(有点)明白我可以如何做db.cname.str.lower() 之类的事情,但我无法推广到字符串访问器之后的任何其他函数。
如何将normalize 函数应用于该系列的所有成员?
【问题讨论】:
我想将以下函数应用于数据框系列:
unicodedata.normalize('NFKD', c.lower().decode('utf-8')).encode('ascii','ignore')
我(有点)明白我可以如何做db.cname.str.lower() 之类的事情,但我无法推广到字符串访问器之后的任何其他函数。
如何将normalize 函数应用于该系列的所有成员?
【问题讨论】:
如果c 是您的字符串列。 map 用于按元素应用函数(当然你不必像这样将它们链接在一起)
df[c] = (df[c].str.lower()
.str.decode('utf-8')
.map(lambda x: unicodedata.normalize('NFKD', x))
.str.encode('ascii', 'ignore'))
【讨论】: