pandas Dataframe 其中2列取小(大)值合成新列

该博客展示了如何利用pandas库在DataFrame上进行列值比较。通过创建一个包含随机数的DataFrame,作者演示了如何取两列的最小值生成新列D,以及如何取两列的最大值生成新列E。这些操作对于数据预处理和分析非常有用。
摘要由CSDN通过智能技术生成
import pandas as pd
import numpy as np


def DataframeMinTest():
    df = pd.DataFrame(np.random.randn(1000, 3), columns=list('ABC'))
    print(df.shape)
    # 方式一 取AB两列小值合成D列
    df['D'] = df.loc[:, ['A', 'B']].min(axis=1)
    # 方式二 取AC两列大值合成E列
    df['E'] = np.max(df.loc[:, ['A', 'C']].values, axis=1)
    print(df.head(10))


if __name__ == '__main__':
    DataframeMinTest()

输出

(1000, 3)
          A               B               C               D             E
0 -0.879277 -1.027903 -0.602419 -1.027903 -0.602419
1  1.010298  1.604261 -0.097757  1.010298  1.010298
2 -0.228731  0.646538  0.020998 -0.228731  0.020998
3  1.404384 -1.681164  0.134697 -1.681164  1.404384
4 -0.368503  0.270716  1.419268 -0.368503  1.419268
5  2.238605  1.628516 -1.984287  1.628516  2.238605
6  0.652273 -0.166380  1.855101 -0.166380  1.855101
7  0.602067  0.604722 -0.640275  0.602067  0.602067
8 -2.775687 -2.649085  0.502292 -2.775687  0.502292
9  0.031345  0.419377 -0.445941  0.031345  0.031345

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值