在 Python-Pandas 中将包含值“yes”和“no”的列替换为 True 和 False
让我们讨论一个程序,用TRUE和FALSE更改包含值“YES”和“NO”的列中的值。
首先,让我们看一个数据集。
代码:
Python3
# import pandas library
import pandas as pd
# load csv file
df = pd.read_csv("supermarkets.csv")
# show the dataframe
df
Python3
# import pandas library
import pandas as pd
# load csv file
df = pd.read_csv("supermarkets.csv")
# replace the ‘commissioned' column contains
# the values 'yes' and 'no' with
# True and False:
df['commissioned'] = df['commissioned'].map(
{'yes':True ,'no':False})
# show the dataframe
df
Python3
# import pandas library
import pandas as pd
# load csv file
df = pd.read_csv("supermarkets.csv")
# replace the ‘commissioned' column
# contains the values 'yes' and 'no'
# with True and False:
df = df.replace({'commissioned': {'yes': True,
'no': False}})
# show the dataframe
df
输出 :
要下载使用的 csv 文件,请单击此处。
现在,让我们看看执行此任务的多种方法:
方法 1:使用 Series.map() 。
此方法用于映射来自具有相同列的两个系列的值。
Syntax: Series.map(arg, na_action=None).
Return type: Pandas Series with the same as an index as a caller.
示例:将包含值“yes”和“no”的“commissioned”列替换为 True 和 False。
代码:
Python3
# import pandas library
import pandas as pd
# load csv file
df = pd.read_csv("supermarkets.csv")
# replace the ‘commissioned' column contains
# the values 'yes' and 'no' with
# True and False:
df['commissioned'] = df['commissioned'].map(
{'yes':True ,'no':False})
# show the dataframe
df
输出 :
方法 2:使用 DataFrame.replace() 。
此方法用于替换数据框中的字符串、正则表达式、列表、字典、系列、数字等。
Syntax: DataFrame.replace(to_replace=None, value=None, inplace=False, limit=None, regex=False, method=’pad’, axis=None)
Return type: Updated Data frame
示例:将包含值“yes”和“no”的“commissioned”列替换为 True 和 False。
代码:
Python3
# import pandas library
import pandas as pd
# load csv file
df = pd.read_csv("supermarkets.csv")
# replace the ‘commissioned' column
# contains the values 'yes' and 'no'
# with True and False:
df = df.replace({'commissioned': {'yes': True,
'no': False}})
# show the dataframe
df
输出: