日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python numpy 子数组_Python利用Numpy数组进行数据处理(一)

發布時間:2025/3/20 python 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python numpy 子数组_Python利用Numpy数组进行数据处理(一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Numpy數組使你可以將許多種數據處理任務表達為簡潔的數組表達式(否則需要編寫循環)。用數組表達式代替循環的做法,通常被稱為矢量化。

np.meshgrid函數接受兩個一維數組,并產生兩個二維矩陣(對應于兩個數組中所有的(x,y)對):

In[1]:point=np.arange(-5,5,0.01)

In[2]:point

Out[2]: array([-5. , -4.99, -4.98, ..., 4.97, 4.98, 4.99])

In[3]:xs,ys=np.meshgrid(point,point)

In[4]:xs #行維度展示

Out[4]:

array([[-5. , -4.99, -4.98, ..., 4.97, 4.98, 4.99],

[-5. , -4.99, -4.98, ..., 4.97, 4.98, 4.99],

[-5. , -4.99, -4.98, ..., 4.97, 4.98, 4.99],

...,

[-5. , -4.99, -4.98, ..., 4.97, 4.98, 4.99],

[-5. , -4.99, -4.98, ..., 4.97, 4.98, 4.99],

[-5. , -4.99, -4.98, ..., 4.97, 4.98, 4.99]])

In[5]:ys #列維度展示

Out[5]:

array([[-5. , -5. , -5. , ..., -5. , -5. , -5. ],

[-4.99, -4.99, -4.99, ..., -4.99, -4.99, -4.99],

[-4.98, -4.98, -4.98, ..., -4.98, -4.98, -4.98],

...,

[ 4.97, 4.97, 4.97, ..., 4.97, 4.97, 4.97],

[ 4.98, 4.98, 4.98, ..., 4.98, 4.98, 4.98],

[ 4.99, 4.99, 4.99, ..., 4.99, 4.99, 4.99]])

#編寫表達式

z=np.sqrt(xs**2+ys**2)

plt.imshow報錯,說matplotlib中沒有imshow。

1.將條件邏輯表述為數組運算

numpy.where函數是三元表達式x if condition else y的矢量化版本。

In[6]:xarr=np.array([1.1,1.2,1.3,1.4,1.5])

In[7]:yarr=np.array([2.1,2.2,2.3,2.4,2.5])

In[8]:cond=np.array([True,False,True,True,False])

In[9]:result=np.where(cond,xarr,yarr)

In[10]:result

Out[10]: array([ 1.1, 2.2, 1.3, 1.4, 2.5])

#說明

cond:條件

xarr:滿足條件,用xarr對應的值替換

yarr:不滿足條件,用yarr對應的值替換。

np.where的第二個和第三個參數不必是數組,可以是標量值。在數據分析工作中,where通常用于根據另一個數組而產生一個新的數組。

#注意標量值的用法

In [18]: arr=np.random.randn(4,4)

In [19]: arr

Out[19]:

array([[ 0.34029727, -0.85125359, 0.84190462, 0.18978229],

[ 1.02542847, 1.06472262, 0.06243246, -0.62324965],

[ 1.04228861, -0.31963213, -0.48520624, -0.82195685],

[-1.37491946, 0.44900294, 0.35896568, 0.69315588]])

In [20]: np.where(arr>0,2,-2)

Out[20]:

array([[ 2, -2, 2, 2],

[ 2, 2, 2, -2],

[ 2, -2, -2, -2],

[-2, 2, 2, 2]])

#注意這里的用法,如果只改滿足條件的,不該不滿足條件的,則使用原數組

In [21]: np.where(arr>0,2,arr)

Out[21]:

array([[ 2. , -0.85125359, 2. , 2. ],

[ 2. , 2. , 2. , -0.62324965],

[ 2. , -0.31963213, -0.48520624, -0.82195685],

[-1.37491946, 2. , 2. , 2. ]])

「親,如果筆記對您有幫助,收藏的同時,記得給點個贊、加個關注哦!感謝!」

「誠邀關注“issnail”,會有驚喜哦!」

「文中代碼均親測過,若有錯誤之處,歡迎批評指正,一起學習,一起成長!」

參考書目:利用python進行數據分析

總結

以上是生活随笔為你收集整理的python numpy 子数组_Python利用Numpy数组进行数据处理(一)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。