版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第三章使用NumPy進(jìn)行多維數(shù)組創(chuàng)建與運(yùn)算
任務(wù)3.5多維數(shù)組的數(shù)據(jù)處理與運(yùn)算通用函數(shù)numpy中的nan和infnan的注意點axis參數(shù)理解通用函數(shù)
NumPy提供熟悉的數(shù)學(xué)函數(shù),例如sin,cos和exp。在NumPy中,這些被稱為“通用函數(shù)”。在NumPy中,這些函數(shù)在數(shù)組上按元素進(jìn)行運(yùn)算,產(chǎn)生數(shù)組作為輸出。一元通用函數(shù):接收一個數(shù)組參數(shù);二元通用函數(shù):接收二個數(shù)組參數(shù)通?函數(shù)(即ufunc)是?種對ndarray中的數(shù)據(jù)執(zhí)?元素級運(yùn)算的函數(shù)。通用函數(shù)的輸入是一組標(biāo)量,輸出也是一組標(biāo)量。一元通用函數(shù)函數(shù)使用說明abs(a)、fabs(a)逐個元素地計算整數(shù)、浮點數(shù)或復(fù)數(shù)的絕對值sqrt(a)計算每個元素的平方根(與a**0.5相等)square(a)計算每個元素的平方(與a**2相等)exp(a)計算每個元素的自然指數(shù)值e^x次方log(a)、log10(a)、log2(a)、log1p(a)分別為自然對數(shù)(底數(shù)為e)、底數(shù)為10的log、底數(shù)為2的log,log(1+x)sign(a)計算每個元素的符號值:1(正數(shù))、0(零)、-1(負(fù)數(shù))ceil(a)計算每個元素的最高整數(shù)值(即大于或者等于給定數(shù)值的最小整數(shù))modf(a)分別將數(shù)組的小數(shù)部分和整數(shù)部分按數(shù)組形式返回二元通用函數(shù)函數(shù)使用說明add(a,b)將數(shù)組a和數(shù)組b中對應(yīng)位置的元素相加subtract(a,b)從a數(shù)組中減去b數(shù)組中的元素multiply(a,b)將數(shù)組a與數(shù)組b相乘divide(a,b),floor_divide(a,b)將數(shù)組a除于數(shù)組b;數(shù)組a整除數(shù)組b(舍去余數(shù))maximum(a,b)、fmax(a,b)將數(shù)組a與數(shù)組b中對應(yīng)位置的元素比較,返回元素級的最大值;比較數(shù)組a和b,并返回一個包含按元素的最大值的新數(shù)組,如果兩個元素相同,則返回第一個。minimum(a,b)、fmin(a,b)將數(shù)組a與數(shù)組b中對應(yīng)位置的元素比較,返回元素級的最小值;比較數(shù)組a和b,并返回一個包含按元素的最小值的新數(shù)組,如果兩個元素相同,則返回第一個。mod(a,b)計算數(shù)組a與數(shù)組b中相應(yīng)元素的相除后的余數(shù)(求模計算)copysign(a,b)將b數(shù)組中各元素的符號賦值給a數(shù)組中的對應(yīng)元素greater、greater_equal、less、less_equal、equal、not_equal、logical_and、logical_or、logical_xor執(zhí)行元素級的比較運(yùn)算,最終產(chǎn)生布爾型數(shù)組,相當(dāng)于運(yùn)算符>、≥、<、≤、==、!=;執(zhí)行元素級的真值邏輯運(yùn)算,相當(dāng)于與&,或|,異或^numpy中的nan和infnan(NAN,Nan):不是一個數(shù)字,數(shù)據(jù)分析中,nan常被用作表示數(shù)據(jù)缺失值。什么時候numpy中會出現(xiàn)nan:
當(dāng)我們讀取本地的文件為float的時候,如果有缺失,就會出現(xiàn)nan;
當(dāng)做了一個不合適的計算的時候,比如inf-infnp.sqrt(-3)inf(-inf,inf):infinity,inf表示正無窮,-inf表示負(fù)無窮什么時候會出現(xiàn)inf包括(-inf,+inf)當(dāng)做了一個不合適的計算的時候,比如np.divide(-3,0)nan的注意點1.兩個nan是不相等的In[2]:np.nan==np.nanOut[2]:False2.np.nan!=np.nanIn[3]:np.nan!=np.nanOut[3]:True3.利用以上特性,判斷數(shù)組中nan個數(shù)In[4]:t=np.array([1,2,np.nan,np.nan])In[5]:np.count_nonzero(t!=t)Out[5]:24.如何判斷ndarray對象中哪些元素是nan?通過np.isnan(t)來判斷,返回布爾數(shù)組。有了布爾數(shù)組作為索引,就可以把所有nan替換掉。In[6]:np.isnan(t)Out[6]:array([False,False,True,True])In[7]:t[np.isnan(t)]=0In[8]:tOut[8]:array([1.,2.,0.,0.])5.nan和任何值計算都為nanIn[9]:np.nan+0Out[9]:nan6.nan或者inf的類型是floatIn[10]:type(np.nan)Out[10]:floatIn[11]:type(np.inf)Out[11]:floatnan值替換
在一組數(shù)據(jù)中單純的把nan替換為0,合適么?會帶來什么樣的影響?比
如,全部替換為0后,替換之前的平均值如果大于0,替換之后的均值肯定會變小,所以更一般的方式是把缺失的數(shù)值替換為均值(中值)或者是直接刪除有缺失值的一行。那么問題來了:
如何計算一組數(shù)據(jù)的中值或者是均值?對列、行做循環(huán),逐個元素判斷來計算。
在對numpy數(shù)組求平均np.mean()時,如果數(shù)組中有nan,此時求得的結(jié)果為nan。那么該如何忽略其中的nan來計算呢?此時可以用另一個方法:np.nanmean(),np.median,np.nanmax(),np.nanmin()等。ndarry缺失值填充列均值,并且不使用np.nanmean(),如何處理呢?axis參數(shù)理解小結(jié)通用函數(shù):以逐元素方式操作多維數(shù)組的函數(shù),支持?jǐn)?shù)組廣播。有數(shù)學(xué)運(yùn)算函數(shù)、三角函數(shù)、位運(yùn)算函數(shù)、比較函數(shù)、浮
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 社區(qū)年度工作計劃(18篇萬能)
- 店鋪經(jīng)營人員轉(zhuǎn)讓合同
- 全屋凈水合同模板
- 2024年技術(shù)咨詢保密協(xié)議(公司與外部機(jī)構(gòu))
- 就把承包合同范例
- 臨建圍欄合同范例
- 減水劑代理合同模板
- 教師教學(xué)管理講解模板
- 學(xué)校建房合同范例
- 2024年技術(shù)專利股權(quán)許可協(xié)議
- 子宮異常出血的護(hù)理
- 高考英語單詞3500記憶短文40篇
- 《耳穴療法治療失眠》課件
- 詢盤分析及回復(fù)
- 氯化工藝安全培訓(xùn)課件
- 指導(dǎo)巡察工作精細(xì)科學(xué)
- 企業(yè)法律知識培訓(xùn)消費(fèi)者權(quán)益保護(hù)實務(wù)
- 快樂讀書吧-讀后分享課:《十萬個為什么》教學(xué)案列
- 2024年 貴州茅臺酒股份有限公司招聘筆試參考題庫含答案解析
- 河上建壩糾紛可行性方案
- 第五單元學(xué)雷鋒在行動(教案)全國通用五年級下冊綜合實踐活動
評論
0/150
提交評論