强制Pandas接受no-op命令

时间:2014-03-13 16:41:01

标签: python pandas

我需要在pandas列上使用no-op操作 使用以下功能不起作用。知道为什么吗?

df['flag'] = filtered.map(lambda x: 'N' if x else pass)

1 个答案:

答案 0 :(得分:4)

您的语法无效。 passstatement,您无法在条件表达式和许多其他上下文中使用它。参见:

>>> True if False else pass # inappropriate use
  File "<stdin>", line 1
    True if False else pass
                          ^
SyntaxError: invalid syntax

>>> if pass: # inappropriate use
  File "<stdin>", line 1
    if pass:
          ^
SyntaxError: invalid syntax

>>> set(pass) # inappropriate use
  File "<stdin>", line 1
    set(pass)
           ^
SyntaxError: invalid syntax

>>> a = [ pass ] # inappropriate use
  File "<stdin>", line 1
    a = [ pass ]
             ^
SyntaxError: invalid syntax

>>> def lazy_function(): # good use
...    pass
... 

在你的代码中尝试返回空字符串(或任何其他值):

df['flag'] = filtered.map(lambda x: 'N' if x else '')