【发布时间】:2021-07-17 13:46:35
【问题描述】:
我正在尝试将列中的字符串值转换为二进制值。例如在下表中 - 映射将像这样 {'cinema':0, 'education':1}。
我已经定义了一个如下的小函数-
def numconv(a):
return a.map({'education' : 1,'cinema' : 0})
然后我使用了“应用”函数来更新数据框中的值 -
train_docs['Class'] = train_docs['Class'].apply(numconv)
但我收到如下错误 -
我在这里做什么?它应该按照我的理解工作。
【问题讨论】:
-
我认为
map是这里的解决方案。 -
如果它的数据框很大,例如,以矢量化方式执行此操作可能会更快。
df['Class]=np.where((df['Class']=='education'),1,0)