Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Python中映射if语句_Python_Pandas_Lambda_Functional Programming - Fatal编程技术网

在Python中映射if语句

在Python中映射if语句,python,pandas,lambda,functional-programming,Python,Pandas,Lambda,Functional Programming,我试图在python 2.7中的pandas数据帧(基本上是一个列表)上映射以下函数: df["Cherbourg"] = df["Embarked"].map(lambda x: if (x == "C") 1 else 0) 但是python错误地说,使用这样的lambda函数是一个语法错误。在python中是否有这样的方法映射if语句 试试看 lambda x: 1 if x == "C" else 0 可能重复的 例如: map(lambda x: True if x % 2 ==

我试图在python 2.7中的pandas数据帧(基本上是一个列表)上映射以下函数:

df["Cherbourg"] = df["Embarked"].map(lambda x: if (x == "C") 1 else 0)
但是python错误地说,使用这样的lambda函数是一个语法错误。在python中是否有这样的方法映射if语句

试试看

lambda x: 1 if x == "C" else 0
可能重复的

例如:

map(lambda x: True if x % 2 == 0 else False, range(1, 11))

结果将是-[假,真,假,真,假,真,假,真,假,真]

这样做会更简单:

df["Cherbourg"] = (df["Embarked"] == "C").astype('int)

df[“Cherbourg”]=df[“Demounted”].apply(lambda x:1如果x==“C”否则为0)

此解决方案可能有效,但请添加一些说明以支持此代码解决方案。另外,请在backticks(
`
)中格式化代码。我怀疑这是否有帮助,甚至根本不起作用。你想补充一个解释吗?