2
我想在Python 2.7映射在大熊貓數據框(基本上是一個列表)以下功能:地圖的if語句在Python
df["Cherbourg"] = df["Embarked"].map(lambda x: if (x == "C") 1 else 0)
但使用lambda函數這樣一種說法蟒蛇錯誤語法錯誤。有沒有辦法在python中映射這樣的if語句?
我想在Python 2.7映射在大熊貓數據框(基本上是一個列表)以下功能:地圖的if語句在Python
df["Cherbourg"] = df["Embarked"].map(lambda x: if (x == "C") 1 else 0)
但使用lambda函數這樣一種說法蟒蛇錯誤語法錯誤。有沒有辦法在python中映射這樣的if語句?
嘗試的 Is there a way to perform "if" in python's lambda
例
lambda x: 1 if x == "C" else 0
可能重複:
map(lambda x: True if x % 2 == 0 else False, range(1, 11))
結果將是 - [假,真,假,真,假,真,假,真,False,True]
這樣做會更簡單他的:
df["Cherbourg"] = (df["Embarked"] == "C").astype('int)
方式也更快... – dawg 2015-03-25 16:36:37