📜  在 Python-Pandas 中将包含值“yes”和“no”的列替换为 True 和 False

📅  最后修改于: 2022-05-13 01:55:13.406000             🧑  作者: Mango

在 Python-Pandas 中将包含值“yes”和“no”的列替换为 True 和 False

让我们讨论一个程序,用TRUEFALSE更改包含值“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()
此方法用于映射来自具有相同列的两个系列的值。

示例:将包含值“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()
此方法用于替换数据框中的字符串、正则表达式、列表、字典、系列、数字等。

示例:将包含值“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

输出:

真假数据框