Python-如何将1/0转换为yes/no(在pandas.DataFrame中)?

Python-如何将1/0转换为yes/no(在pandas.DataFrame中)?,python,r,pandas,Python,R,Pandas,在R中,如果我想基于另一列1和0创建一个带有YES/NO的新列,以下代码适用于我的目的 df <- data.frame(alpha = c(50, 51, 52), beta = c(1,0,1)) df$gamma <- factor(df$beta, label = c('no','yes')) alpha beta gamma 1 50 1 yes 2 51 0 no 3 52 1 yes 提前谢谢。(越简单越好)您可

R中,如果我想基于另一列
1
0
创建一个带有YES/NO的新列,以下代码适用于我的目的

df <- data.frame(alpha = c(50, 51, 52), beta = c(1,0,1))
df$gamma <- factor(df$beta, label = c('no','yes'))

  alpha beta gamma
1    50    1   yes
2    51    0    no
3    52    1   yes
提前谢谢。(越简单越好)

您可以使用,它接受字典输入:

import pandas as pd

df = pd.DataFrame({'alpha': [50, 51, 52], 'beta': [1,0,1]})

df['gamma'] = df['beta'].map({True: 'yes', False: 'no'})

可以说,它不是最简单的解决方案,但是如果你将一组整数映射到字符串,你可以考虑使用分类dType:<代码> df [γ' ]=Pd.Acthix.FasyCo代码(DF.Beta,类别= [否],“是”)< <代码>(这是我理解的R解决方案更接近)。-它应该是快速和内存效率太高。建议的副本是在另一个方向(str->int,而不是int->str)的转换。我认为map在数据帧上不起作用。
import pandas as pd

df = pd.DataFrame({'alpha': [50, 51, 52], 'beta': [1,0,1]})

df['gamma'] = df['beta'].map({True: 'yes', False: 'no'})