0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

几个数据分析中经常需要用到的重要函数

lviY_AI_shequ 来源:数据科学杂谈 2020-05-12 10:00 次阅读

Numpy 功能十分强大,很多我们想要的复杂操作都有实现。今天分享几个数据分析中经常需要用到的重要函数。掌握这些函数可以帮助我们保持代码整洁并且避免重复造轮子。

准备工作

导入numpy

import numpy as np

示例数据

本文以二分类任务为例,通常我们的model会输出预测的概率,得到概率后需要进行后续的处理,比如:

•根据阈值,将概率大于某个阈值的label设置为1,小于阈值的设置为0•在模型诊断过程中,找出满足某些条件的样本

本文使用的示例数据如下:

predict_prob = np.array([0.1,0.3,0.7,0.4,0.9])

where()

np.where() 方法可以帮助我们找到array中满足条件的元素的位置。现在我们可以使用np.where()找出所有预测概率大于0.5的的元素了:

predict_prob = np.array([0.1,0.3,0.7,0.4,0.9])np.where(predict_prob > 0.5)# output:array([2, 4]),)

如果我们想将所有概率大于0.5的元素替换为1,否则替换为0,该怎么做呢?

一个简单粗暴的方式是先用上面的方法分别找出array中概率大于或者小于0.5的索引,然后再对这些位置的元素重新赋值。

其实,np.where() 一个函数就能完成所有的操作,只需要添加两个参数

•第一个参数是满足条件替换的值•第二个参数是不满足条件替换的值

predict_prob = np.array([0.1,0.3,0.7,0.4,0.9])np.where(predict_prob > 0.5, 1, 0)# output: array([0, 0, 1, 0, 1])

argmin()、argmax()、argsort()

np.argmin()、np.argmax()方法会返回array中最小或最大的元素索引,对示例数据运行结果如下:

predict_prob = np.array([0.1,0.3,0.7,0.4,0.9]) np.argmax(predict_prob)# output: 4np.argmin(predict_prob)# output: 0

我们成功找到了array中最大最小的元素索引,那怎样找到前n个最大的或最小的值呢?

现在该轮到np.sort()上场了

predict_prob = np.array([0.1,0.3,0.7,0.4,0.9])np.argsort(predict_prob)# output: array([0, 1, 3, 2, 4])

np.argsort()方法还支持多维数据的排序,感兴趣的可以自行查看Numpy官方文档[1]

intersect1d()

intersect1d()要做的是,它会找出两个array中的交集,这个函数和前面的几个函数不同,返回的不是索引位置,而是array中的实际值。

本函数我们使用新的示例数据:

arr1 = np.array([1,2,4,4,6])arr2 = np.array([2,3,4,5,6])

现在,我们可以使用intersect1d()找出两个数组共同的元素了:

np.intersect1d(arr1, arr2)# output: array([2, 4, 6])

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 阈值
    +关注

    关注

    0

    文章

    123

    浏览量

    18492
  • 函数
    +关注

    关注

    3

    文章

    4329

    浏览量

    62588
  • 数据分析
    +关注

    关注

    2

    文章

    1447

    浏览量

    34056

原文标题:Numpy 中不得不知的4个重要函数

文章出处:【微信号:AI_shequ,微信公众号:人工智能爱好者社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    n型焊接头需要用到哪些材料

    德索工程师说道N型焊接头作为射频同轴连接器的一种,其制造过程中需要使用多种材料以确保其性能的稳定性和可靠性。以下是对N型焊接头所需材料的详细分析: 铜合金:N型焊接头的核心接触件通常采用高导电性
    的头像 发表于 11-20 10:52 123次阅读
    n型焊接头<b class='flag-5'>需要用到</b>哪些材料

    ADS9234R这个AD的寄存器如何配置,需要用到几个引脚?

    请问一下,ADS9234R这个AD的寄存器如何配置,需要用到几个引脚?时序是怎样的?与复位信号有什么关系?感觉官方文档对寄存器配置这一块描述比较少,我用FPGA与ADS9234R做接口,写入寄出器参数,读出总是不对。
    发表于 11-15 07:48

    为什么选择eda进行数据分析

    数据科学领域,数据分析是一个复杂且多步骤的过程,它涉及到数据的收集、清洗、探索、建模和解释。在这些步骤中,探索性数据分析(EDA)扮演着至关重要
    的头像 发表于 11-13 10:41 228次阅读

    raid 在大数据分析中的应用

    的具体应用: 一、提高性能 并行读写 :RAID技术通过并行读写多个磁盘,可以显著提高数据的读写速度。在大数据分析环境中,数据读写速度是影响分析效率的关键因素之一。RAID 0(条带化
    的头像 发表于 11-12 09:44 244次阅读

    SUMIF函数数据分析中的应用

    在商业和科学研究中,数据分析是一项基本且关键的技能。Excel作为最常用的数据分析工具之一,提供了多种函数来帮助用户处理和分析数据。SUMI
    的头像 发表于 11-11 09:14 317次阅读

    在进行高速信号放大设计时,往往需要用到反馈电路,是否反馈电路越短越好?

    在进行高速信号放大设计时,往往需要用到反馈电路,是否反馈电路越短越好,不同封装是否在这方面有不同优势?
    发表于 09-26 07:55

    射频连接器mcx需要用到护线套吗

     德索工程师说道射频连接器MCX是否需要用到护线套,这主要取决于具体的应用场景、环境条件以及保护需求。以下是对此问题的详细分析:   MCX连接器是一种超小型射频连接器,发明于1980年代
    的头像 发表于 09-02 10:48 247次阅读
    射频连接器mcx<b class='flag-5'>需要用到</b>护线套吗

    什么时候需要用到no phase reversal运放呢?

    什么时候需要用到no phase reversal运放呢? 此时不用的话会造成什么影响呢?
    发表于 08-02 14:09

    数据分析除了spss还有什么

    数据分析是当今世界中一个非常重要的领域,它涉及到从大量数据中提取有用信息、发现模式和趋势,并为决策提供支持。SPSS(Statistical Package for the Social
    的头像 发表于 07-05 15:01 617次阅读

    数据分析的工具有哪些

    数据分析是一个涉及收集、处理、分析和解释数据以得出有意义见解的过程。在这个过程中,使用正确的工具至关重要。以下是一些主要的数据分析工具,以及
    的头像 发表于 07-05 14:54 856次阅读

    数据分析有哪些分析方法

    。 描述性分析 描述性分析数据分析的第一步,它的目的是对数据进行描述和总结。描述性分析通常包括以下几个
    的头像 发表于 07-05 14:51 579次阅读

    ADXL1002噪声密度,非线性度,量程,灵敏度该如何测试?需要用到哪些器件?

    ADXL1002比如噪声密度,非线性度,量程,灵敏度该如何测试,需要用到哪些器件,有没有相应的学习资料。
    发表于 05-31 06:29

    求助,关于AD采集到的数据分析问题

    MATLAB中画图后能看到几个周期的图像 数据特征:在matlab中能看到图像是由两部分构成,一部分是基波及其n次谐波,即存在上升沿,过冲,另一部分是随机噪声 求各位大神科普数据分析方法(稍后传MATLAB图像)
    发表于 05-09 07:40

    在一个应用中需要用到ST32的触摸遇到的疑问求解

    我在一个应用中需要用到ST32的触摸,现在遇到问题,向大家求助,谢谢! 1、htsc.Init.ChannelIOs这个配置是指我们用手触摸的那个管脚吧? 我理解是手触摸的端口,且可以接多个触摸端口
    发表于 04-23 07:16

    什么是makefile?为什么需要用makefile?

    如果文件稍微多几个,gcc 里面多加几个问题也不大。
    的头像 发表于 03-06 16:32 594次阅读