【问题标题】:subtract multiple columns at once一次减去多列
【发布时间】:2021-06-29 01:58:58
【问题描述】:

我有两个数据框:

df_1 = pd.DataFrame({'a' : [7,8, 2], 'b': [6, 6, 11], 'c': [4, 8, 6]})
df_1

df_2 = pd.DataFrame({'d' : [8, 4, 12], 'e': [16, 2, 1], 'f': [9, 3, 4]})
df_2

我的目标是这样的:

以一种“一次性”的方式,我可以多次减去每一列。

我正在尝试for 循环,但我被卡住了!

【问题讨论】:

    标签: python pandas multiple-columns subtraction


    【解决方案1】:

    您可以将它们减去为 numpy 数组(使用 .values),然后将结果放入数据框中:

    df_3 = pd.DataFrame(df_1.values - df_2.values, columns=list('xyz'))
    
    #     x   y  z
    # 0  -1 -10 -5
    # 1   4   4  5
    # 2 -10  10  2
    

    或者将df_1.columnsdf_2.columns重命名为['x','y','z'],直接相减即可:

    df_1.columns = df_2.columns = list('xyz')
    df_3 = df_1 - df_2
    
    #     x   y  z
    # 0  -1 -10 -5
    # 1   4   4  5
    # 2 -10  10  2
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-12
      • 2016-04-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-02-13
      • 1970-01-01
      相关资源
      最近更新 更多