当前位置: 首页 > 面试题库 >

Python / Pandas成语,用于if / then / else [重复]

诸葛利
2023-03-14
问题内容

这个问题已经在这里有了答案

Lambda包括if … elif … else (3个答案)

去年关闭。

在整个熊猫数据帧上执行计算后,我需要返回并根据另一个变量的值覆盖变量计算(通常设置为零)。有没有更简洁/惯用的方式来执行这种操作?

df['var1000'][df['type']==7] = 0
df['var1001'][df['type']==7] = 0
df['var1002'][df['type']==7] = 0
...
df['var1099'][df['type']==7] = 0

有熊猫做这种事情的方法吗?

if (df['type']==7):
    df['var1000'] = 0
    df['var1001'] = 0
    df['var1002'] = 0
    ...
    df['var1099'] = 0

问题答案:
df.ix[df.type==7, ['var1001', 'var1002']] = 0

如果您在所有列上都执行此操作,则可以执行df.ix[df.type==7] = 0。或者当然,如果您有要替换其值的列的列表,则可以在第二个插槽中传递该列表:

columnsToReplace = ['var1001', 'var1002', ...]
df.ix[df.type==8, columnsToReplace] = 0


 类似资料:
  • if-then语句后面可以跟一个可选的else语句,该语句在布尔表达式为false时执行。 语法 (Syntax) if-then-else语句的语法是 - if condition then S1 else S2; 其中, S1和S2是不同的陈述。 Please note that the statement S1 is not followed by a semicolon 。 在if-th

  • If语句后面可以跟一个可选的Else语句,该语句在布尔表达式为false时执行。 语法 (Syntax) VB.Net中If ... Then ... Else语句的语法如下 - If(boolean_expression)Then 'statement(s) will execute if the Boolean expression is true Else 'statement(

  • if-then语句后跟一个可选的else语句,该语句在布尔表达式为false时执行。 使用if-then ... else语句,我们可以在一行中编写if ... else语句。 语法 (Syntax) 以下是CoffeeScript中if-then...else语句的语法。 if expression <b>then</b> Statements (for true condition) else

  • if… then语句后面可以跟一个可选的else statement,该else statement,在逻辑表达式为false时执行。 语法 (Syntax)> if… then… else语句的基本语法是 - if (logical expression) then statement(s) else other_statement(s) end if 但是,如果给

  • if/then语句后面可以跟一个可选的else语句,该语句在布尔表达式为false时执行。 语法 (Syntax) F#编程语言中if/then/else语句的语法是 - if expr then expr else expr 流程图 (Flow Diagram) 例子 (Example) let a : int32 = 100 (* check the boolean condit

  • 问题内容: 我正在寻找编写一个PostgreSQL查询来执行以下操作: 我已经试过这个查询,但是没有用 谢谢你 问题答案: 如PostgreSQL的文档中阐明在这里: SQL CASE表达式是通用条件表达式,类似于其他编程语言中的if / else语句。 专门回答您的问题的代码段:

  • if/then/elif/else构造具有多个else分支。 语法 (Syntax) F#编程语言中if/then/elif/else语句的语法是 - if expr then expr elif expr then expr elif expr then expr ... else expr 例子 (Example) let a : int32 = 100 (* che

  • 问题内容: MySQL / MSSQL可以在查询中使用整齐的内联if函数,以检测空值,如下所示。 我现在遇到的问题是该代码在Oracle数据库上运行不安全,因为它似乎不支持此内联if语法。 在Oracle中是否有等效功能? 问题答案: 使用标准的COALESCE函数: 或使用Oracle自己的NVL函数执行相同的操作。