我来自 R 背景,我正在尝试mutate()从 Pandas 中的 dplyr复制该功能。
我有一个看起来像这样的数据框:
data = {'name': ['Jason', 'Molly', 'Tina', 'Jake', 'Amy'],
'age': [42, 52, 36, 24, 73],
'preTestScore': [4, 24, 31, 2, 3],
'postTestScore': [25, 94, 57, 62, 70]}
df = pd.DataFrame(data, columns = ['name', 'age', 'preTestScore', 'postTestScore'])
Run Code Online (Sandbox Code Playgroud)
我现在正在尝试创建一个名为age_bracketusingassign方法的新列,如下所示:
(df.
assign(age_bracket= lambda x: "under 25" if x['age'] < 25 else
("25-34" if x['age'] < 35 else "35+"))
Run Code Online (Sandbox Code Playgroud)
这引发了我无法理解的以下错误:
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), …