Python数据帧if和for语法错误

Python数据帧if和for语法错误,python,pandas,dataframe,for-loop,if-statement,Python,Pandas,Dataframe,For Loop,If Statement,当我试图运行下面的命令时,我收到一个“无效语法”错误,我已粘贴在下面 命令: Orig_df['Generation'] = [Val if x > LBY and x < UBY for x in ['birth_year']] Orig_df['Generation']=[Val if x>LBY,xLBY,xLBY和x

当我试图运行下面的命令时,我收到一个“无效语法”错误,我已粘贴在下面

命令:

Orig_df['Generation'] = [Val if x > LBY and x < UBY for x in ['birth_year']]
Orig_df['Generation']=[Val if x>LBY,x
错误

Orig_df['Generation']=[Val if x>LBY,x
SyntaxError:无效语法

我不知道我做错了什么

为了清楚起见,^指向For上的r-我无法解决如何在此处更正


提前感谢您的帮助

再看一看的语法

看起来你在试着写作

Orig_df['Generation'] = [Val for x in ['birth_year'] if x > LBY and x < UBY]
Orig_df['Generation']=[x>LBY和x
请注意,过滤条件位于与其关联的
之后

请注意,此代码还存在其他问题,这些问题将阻止它在正确的列表理解语法之后运行

Orig_df['Generation'] = [Val for x in ['birth_year'] if x > LBY and x < UBY]