0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

幾個數(shù)據(jù)分析中經(jīng)常需要用到的重要函數(shù)

lviY_AI_shequ ? 來源:數(shù)據(jù)科學(xué)雜談 ? 2020-05-12 10:00 ? 次閱讀

Numpy 功能十分強(qiáng)大,很多我們想要的復(fù)雜操作都有實現(xiàn)。今天分享幾個數(shù)據(jù)分析中經(jīng)常需要用到的重要函數(shù)。掌握這些函數(shù)可以幫助我們保持代碼整潔并且避免重復(fù)造輪子。

準(zhǔn)備工作

導(dǎo)入numpy

import numpy as np

示例數(shù)據(jù)

本文以二分類任務(wù)為例,通常我們的model會輸出預(yù)測的概率,得到概率后需要進(jìn)行后續(xù)的處理,比如:

?根據(jù)閾值,將概率大于某個閾值的label設(shè)置為1,小于閾值的設(shè)置為0?在模型診斷過程中,找出滿足某些條件的樣本

本文使用的示例數(shù)據(jù)如下:

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

where()

np.where() 方法可以幫助我們找到array中滿足條件的元素的位置?,F(xiàn)在我們可以使用np.where()找出所有預(yù)測概率大于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() 一個函數(shù)就能完成所有的操作,只需要添加兩個參數(shù)

?第一個參數(shù)是滿足條件替換的值?第二個參數(shù)是不滿足條件替換的值

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中最小或最大的元素索引,對示例數(shù)據(jù)運行結(jié)果如下:

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個最大的或最小的值呢?

現(xià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()方法還支持多維數(shù)據(jù)的排序,感興趣的可以自行查看Numpy官方文檔[1]

intersect1d()

intersect1d()要做的是,它會找出兩個array中的交集,這個函數(shù)和前面的幾個函數(shù)不同,返回的不是索引位置,而是array中的實際值。

本函數(shù)我們使用新的示例數(shù)據(jù):

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

現(xiàn)在,我們可以使用intersect1d()找出兩個數(shù)組共同的元素了:

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

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 閾值
    +關(guān)注

    關(guān)注

    0

    文章

    122

    瀏覽量

    18457
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4284

    瀏覽量

    62325
  • 數(shù)據(jù)分析
    +關(guān)注

    關(guān)注

    2

    文章

    1412

    瀏覽量

    33987

原文標(biāo)題:Numpy 中不得不知的4個重要函數(shù)

文章出處:【微信號:AI_shequ,微信公眾號:人工智能愛好者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    SUMIF函數(shù)數(shù)據(jù)分析中的應(yīng)用

    在商業(yè)和科學(xué)研究中,數(shù)據(jù)分析是一項基本且關(guān)鍵的技能。Excel作為最常用的數(shù)據(jù)分析工具之一,提供了多種函數(shù)來幫助用戶處理和分析數(shù)據(jù)。SUMI
    的頭像 發(fā)表于 11-11 09:14 ?124次閱讀

    在進(jìn)行高速信號放大設(shè)計時,往往需要用到反饋電路,是否反饋電路越短越好?

    在進(jìn)行高速信號放大設(shè)計時,往往需要用到反饋電路,是否反饋電路越短越好,不同封裝是否在這方面有不同優(yōu)勢?
    發(fā)表于 09-26 07:55

    射頻連接器mcx需要用到護(hù)線套嗎

     德索工程師說道射頻連接器MCX是否需要用到護(hù)線套,這主要取決于具體的應(yīng)用場景、環(huán)境條件以及保護(hù)需求。以下是對此問題的詳細(xì)分析:   MCX連接器是一種超小型射頻連接器,發(fā)明于1980年代
    的頭像 發(fā)表于 09-02 10:48 ?190次閱讀
    射頻連接器mcx<b class='flag-5'>需要用到</b>護(hù)線套嗎

    什么時候需要用到no phase reversal運放呢?

    什么時候需要用到no phase reversal運放呢? 此時不用的話會造成什么影響呢?
    發(fā)表于 08-02 14:09

    數(shù)據(jù)分析的工具有哪些

    數(shù)據(jù)分析是一個涉及收集、處理、分析和解釋數(shù)據(jù)以得出有意義見解的過程。在這個過程中,使用正確的工具至關(guān)重要。以下是一些主要的數(shù)據(jù)分析工具,以及
    的頭像 發(fā)表于 07-05 14:54 ?724次閱讀

    數(shù)據(jù)分析有哪些分析方法

    。 描述性分析 描述性分析數(shù)據(jù)分析的第一步,它的目的是對數(shù)據(jù)進(jìn)行描述和總結(jié)。描述性分析通常包括以下幾個
    的頭像 發(fā)表于 07-05 14:51 ?473次閱讀

    ADXL1002噪聲密度,非線性度,量程,靈敏度該如何測試?需要用到哪些器件?

    ADXL1002比如噪聲密度,非線性度,量程,靈敏度該如何測試,需要用到哪些器件,有沒有相應(yīng)的學(xué)習(xí)資料。
    發(fā)表于 05-31 06:29

    求助,關(guān)于AD采集到的數(shù)據(jù)分析問題

    MATLAB中畫圖后能看到幾個周期的圖像 數(shù)據(jù)特征:在matlab中能看到圖像是由兩部分構(gòu)成,一部分是基波及其n次諧波,即存在上升沿,過沖,另一部分是隨機(jī)噪聲 求各位大神科普數(shù)據(jù)分析方法(稍后傳MATLAB圖像)
    發(fā)表于 05-09 07:40

    在一個應(yīng)用中需要用到ST32的觸摸遇到的疑問求解

    我在一個應(yīng)用中需要用到ST32的觸摸,現(xiàn)在遇到問題,向大家求助,謝謝! 1、htsc.Init.ChannelIOs這個配置是指我們用手觸摸的那個管腳吧? 我理解是手觸摸的端口,且可以接多個觸摸端口
    發(fā)表于 04-23 07:16

    做一個正負(fù)4V的電壓檢測,需要用到16位的ADC,如何選擇ADC?

    目前項目中做一個正負(fù)4V的電壓檢測,需要用到16位的ADC,請幫忙選型。因為正負(fù)采樣第一次做,所以沒一點頭緒。
    發(fā)表于 12-12 06:14

    游戲手柄上哪幾塊需要用到霍爾開關(guān)?

    了解過游戲手柄的小伙伴們都知道,游戲手柄上需要用到霍爾元件來控制速度方向,那么通常有哪幾塊需要用到霍爾開關(guān)元件呢?
    發(fā)表于 12-07 15:36

    為什么要走差分線?哪些地方需要用到差分走線?

    為什么要走差分線?哪些地方需要用到差分走線?差分線與等長線的關(guān)系? 差分線是一種常見的高速布線技術(shù),用于傳輸高頻信號。差分信號傳輸是指通過兩條物理線傳輸信號,其中一條線是信號的正向傳輸線,另一
    的頭像 發(fā)表于 12-07 11:15 ?2395次閱讀

    什么芯片的封裝內(nèi)部需要用到TIM1?

    什么芯片的封裝內(nèi)部需要用到TIM1? TIM1是指定STM32系列微控制器上的一個定時器/計數(shù)器模塊,可以用于各種定時、計數(shù)和脈沖寬度測量應(yīng)用。在STM32芯片中,許多不同類型的封裝都可能使用到
    的頭像 發(fā)表于 12-07 11:00 ?957次閱讀

    Get職場新知識:做分析,用大數(shù)據(jù)分析工具

    數(shù)據(jù)管理的。 隨著原來越多的企業(yè)加入了數(shù)字化轉(zhuǎn)型的隊伍,大數(shù)據(jù)分析工具也越來越多地被應(yīng)用于各行各業(yè)的業(yè)務(wù)數(shù)據(jù)分析中,直至今日,大數(shù)據(jù)分析工具也成為了
    發(fā)表于 12-05 09:36

    電源適配器散熱設(shè)計需要用到哪些導(dǎo)熱界面材料呢?

    電源適配器散熱設(shè)計需要用到哪些導(dǎo)熱界面材料呢? 電源適配器散熱設(shè)計是為了確保設(shè)備能夠正常運行并保持穩(wěn)定的溫度,在散熱設(shè)計中導(dǎo)熱界面材料扮演著重要的角色。導(dǎo)熱界面材料能夠有效地提高熱量的傳導(dǎo)效率,將
    的頭像 發(fā)表于 11-24 14:07 ?840次閱讀