【问题标题】:Combine two columns with if condition in pandas将两列与熊猫中的if条件结合起来
【发布时间】:2020-03-30 17:44:28
【问题描述】:

我有两列数据,其中某些条目重叠(并且在重叠时几乎相似)。

df = pd.DataFrame(
                  {'x':[2.1,3.1,5.4,1.9,np.nan,4.3,np.nan,np.nan,np.nan],
                   'y':[np.nan,np.nan,5.3,1.9,3.2,4.2,9.1,7.8,4.1]
                  }
                 )

我希望结果是一列“xy”,其中包含 x 和 y 的平均值(当它们都具有值时)和 x 或 y(当它们中只有一个具有这样的值时):

df['xy']=[2.1,3.1,5.35,1.9,3.2,4.25,9.1,7.8,4.1]

【问题讨论】:

  • df['xy'] = df[['x','y']].mean(1)
  • 你有什么尝试吗?

标签: python pandas join merge


【解决方案1】:

给你:

解决方案

df['xy'] = df[['x','y']].mean(axis=1)

输出

print(df.to_string())

     x    y    xy
0  2.1  NaN  2.10
1  3.1  NaN  3.10
2  5.4  5.3  5.35
3  1.9  1.9  1.90
4  NaN  3.2  3.20
5  4.3  4.2  4.25
6  NaN  9.1  9.10
7  NaN  7.8  7.80
8  NaN  4.1  4.10

【讨论】:

    猜你喜欢
    • 2017-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-30
    • 2018-07-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多