我有一个名为数据帧df作为
df
Order Number Status 1 1668 Undelivered 2 19771 Undelivered 3 100032108 Undelivered 4 2229 Delivered 5 00056 Undelivered
我想将Status列转换为布尔值(True当状态为“已交付”而False状态为“未交付”时),但是如果状态既不是“未交付”也不是“未交付”,则应将其视为“NotANumber类似”。
Status
True
False
NotANumber
我想用一个字典
d = { 'Delivered': True, 'Undelivered': False }
所以我可以轻松地添加其他字符串,可以将其视为True或False。
您可以使用map:
map
In [7]: df = pd.DataFrame({'Status':['Delivered', 'Delivered', 'Undelivered', 'SomethingElse']}) In [8]: df Out[8]: Status 0 Delivered 1 Delivered 2 Undelivered 3 SomethingElse In [9]: d = {'Delivered': True, 'Undelivered': False} In [10]: df['Status'].map(d) Out[10]: 0 True 1 True 2 False 3 NaN Name: Status, dtype: object