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

    文章

    120

    浏览量

    18348
  • 函数
    +关注

    关注

    3

    文章

    3859

    浏览量

    61297
  • 数据分析
    +关注

    关注

    2

    文章

    1349

    浏览量

    33728

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

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

收藏 人收藏

    评论

    相关推荐

    做一个正负4V的电压检测,需要用到16位的ADC,如何选择ADC?

    目前项目中做一个正负4V的电压检测,需要用到16位的ADC,请帮忙选型。因为正负采样第一次做,所以没一点头绪。
    发表于 12-12 06:14

    游戏手柄上哪几块需要用到霍尔开关?

    了解过游戏手柄的小伙伴们都知道,游戏手柄上需要用到霍尔元件来控制速度方向,那么通常有哪几块需要用到霍尔开关元件呢?
    发表于 12-07 15:36

    为什么要走差分线?哪些地方需要用到差分走线?

    为什么要走差分线?哪些地方需要用到差分走线?差分线与等长线的关系  差分线是一种常见的高速布线技术,用于传输高频信号。差分信号传输是指通过两条物理线传输信号,其中一条线是信号的正向传输线,另一
    的头像 发表于 12-07 11:15 1307次阅读

    什么芯片的封装内部需要用到TIM1?

    什么芯片的封装内部需要用到TIM1? TIM1是指定STM32系列微控制器上的一个定时器/计数器模块,可以用于各种定时、计数和脉冲宽度测量应用。在STM32芯片中,许多不同类型的封装都可能使用到
    的头像 发表于 12-07 11:00 429次阅读

    Get职场新知识:做分析,用大数据分析工具

    数据管理的。 随着原来越多的企业加入了数字化转型的队伍,大数据分析工具也越来越多地被应用于各行各业的业务数据分析中,直至今日,大数据分析工具也成为了
    发表于 12-05 09:36

    电源适配器散热设计需要用到哪些导热界面材料呢?

    电源适配器散热设计需要用到哪些导热界面材料呢? 电源适配器散热设计是为了确保设备能够正常运行并保持稳定的温度,在散热设计中导热界面材料扮演着重要的角色。导热界面材料能够有效地提高热量的传导效率
    的头像 发表于 11-24 14:07 395次阅读

    电感有什么作用吗?一般电路上需要用到电感吗?

    电感有什么作用吗?一般电路上需要用到电感吗?
    发表于 11-07 08:13

    一般在什么情况下需要用到simulink?

    使用simlink生成嵌入式的代码,一般在什么情况下需要用到simulink,simulink的教程,谁有提供一下
    发表于 11-06 08:06

    只有一个iic,但有两个设备需要用到iic,那iic可以分时复用吗?

    请问,我要是只有一个iic,但有两个设备需要用到iic,那iic可以分时复用,会不会有冲突??????
    发表于 10-26 07:39

    变频器维修需要用到的工具都有哪些

    变频器维修需要用到的工具都有哪些
    的头像 发表于 10-20 08:42 1465次阅读

    个数据中心大概需要用到多少光模块?

    数据中心有多种架构,在数据中心架构演进的过程中,对光模块的需求产生新的变化。光模块作为实现光电转换的核心器件,在数据中心内部有广泛应用。
    的头像 发表于 08-04 09:49 728次阅读

    C语言的函数如何返回多个数据

    C语言的函数如何返回多个数据?这个操作在写代码的时候还经常遇到。
    发表于 07-25 10:53 592次阅读

    电商数据分析攻略,让你轻松搞定数据分析

    在当今的数字经济时代,运用大数据分析来促进业务增长已然成为一种普遍行为,拥有一套系统化的数据分析方案尤为重要。奥威BI电商数据分析方案是一种基于数据
    发表于 06-27 09:22

    数据分析重要

    数据分析有助于找到问题的解决方案,如降低成本,节省时间并降低决策风险。通过结合数据分析和机器学习,企业可以通过以下方式获益匪浅:
    的头像 发表于 05-10 15:34 659次阅读

    什么是数据分析数据分析能为企业带来什么?

    随着大数据技术的发展,数据分析已成为企业决策的重要组成部分。数据分析是指通过收集、清洗和处理数据,从中发掘出有价值的信息和见解,以帮助企业做
    的头像 发表于 04-21 10:43 652次阅读