Convert Pandas series containing string to boolean
You can just use map
:
In [7]: df = pd.DataFrame({'Status':['Delivered', 'Delivered', 'Undelivered', 'SomethingElse']})In [8]: dfOut[8]: Status0 Delivered1 Delivered2 Undelivered3 SomethingElseIn [9]: d = {'Delivered': True, 'Undelivered': False}In [10]: df['Status'].map(d)Out[10]:0 True1 True2 False3 NaNName: Status, dtype: object
An example of replace
method to replace values only in the specified column C2
and get result as DataFrame
type.
import pandas as pddf = pd.DataFrame({'C1':['X', 'Y', 'X', 'Y'], 'C2':['Y', 'Y', 'X', 'X']}) C1 C20 X Y1 Y Y2 X X3 Y Xdf.replace({'C2': {'X': True, 'Y': False}}) C1 C20 X False1 Y False2 X True3 Y True