在Pandas中,您可以使用pd.Series.map()
方法或.astype()
方法将布尔值(True/False)转换为整数(1/0)。以下是根据列索引进行转换的步骤:
pd.Series.map()
方法import pandas as pd
# 创建一个示例DataFrame
df = pd.DataFrame({
'A': [True, False, True],
'B': [False, True, False]
})
# 假设我们要转换列'A',其索引为0
col_index = 0
# 将布尔值映射到整数
df.iloc[:, col_index] = df.iloc[:, col_index].map({True: 1, False: 0})
print(df)
.astype()
方法import pandas as pd
# 创建一个示例DataFrame
df = pd.DataFrame({
'A': [True, False, True],
'B': [False, True, False]
})
# 假设我们要转换列'A',其索引为0
col_index = 0
# 将布尔值转换为整数
df.iloc[:, col_index] = df.iloc[:, col_index].astype(int)
print(df)
pd.Series.map()
方法,通过映射字典将布尔值转换为整数。.astype(int)
方法,直接将布尔值转换为整数。这种方法在处理包含布尔值的DataFrame时非常有用,特别是在需要将布尔值用于数值计算或与其他数值数据集进行合并时。
通过这两种方法,您可以根据列索引将Pandas列中的布尔值转换为整数。
领取专属 10元无门槛券
手把手带您无忧上云