【问题标题】:How to choose a value from two columns (First and Second) to subtract from another column (Third), based on condition?如何根据条件从两列(第一和第二)中选择一个值以从另一列(第三)中减去?
【发布时间】:2023-04-01 23:49:01
【问题描述】:

enter image description here

总共有 4 列。

VALUE_DIFF 是计算值。这基于列“SECOND”的值是否大于 0,然后从“SECOND”和“BASE_COLUMN”[SECOND - BASE_COLUMN] 中减去列值。如果列“SECOND”为 0,则从“FRIST”和“BASE COLUMN”中减去列值 [FIRST - BASED_COLUMN]

想知道 Pandas 如何在这种情况下执行?

【问题讨论】:

    标签: python-3.x pandas dataframe


    【解决方案1】:

    使用numpy.where:

    df['DIFF'] = np.where(df['SECOND'].gt(0), df['SECOND'], df['FIRST']) - df['BASE_COLUMN']
    

    有什么相似之处:

    df['DIFF'] = np.where(df['SECOND'].gt(0), 
                          df['SECOND']- df['BASE_COLUMN'], 
                          df['FIRST']- df['BASE_COLUMN']) 
    

    【讨论】:

      猜你喜欢
      • 2022-01-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-12
      • 1970-01-01
      • 2021-09-10
      相关资源
      最近更新 更多