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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

Numpy中的数组变形操作01——reshape() 重塑, flatten()/reval() 扁平化

發(fā)布時(shí)間:2023/12/20 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Numpy中的数组变形操作01——reshape() 重塑, flatten()/reval() 扁平化 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

reshape() 重塑, flatten()/reval() 扁平化

reshape()——>完成從低維到高維的轉(zhuǎn)換
flatten()——>完成從高維到低維的轉(zhuǎn)換 同時(shí)可以用ravel()實(shí)現(xiàn)

a. 基礎(chǔ)用法舉例

import numpy as np help(np.ravel)

ravel(a, order=‘C’)
Return a contiguous flattened array.
a : array_like
Input array. The elements in a are read in the order specified by
order, and packed as a 1-D array.
order : {‘C’,‘F’, ‘A’, ‘K’}, optional

用reshape()創(chuàng)建二維數(shù)組arr

arr=np.arange(1,25.0).reshape((4,-1)) #tips:用-1直接計(jì)算另一個(gè)參數(shù)

array([[ 1., 2., 3., 4., 5., 6.],
[ 7., 8., 9., 10., 11., 12.],
[13., 14., 15., 16., 17., 18.],
[19., 20., 21., 22., 23., 24.]])

對其進(jìn)行進(jìn)行扁平化(打平):

arr_=arr.flatten() arr_2=arr.ravel()

array([ 1., 2., 3., 4., 5., 6., 7., 8., 9., 10., 11., 12., 13.,
14., 15., 16., 17., 18., 19., 20., 21., 22., 23., 24.])

b. ravel和flatten的區(qū)別

raval()進(jìn)行扁平化處理時(shí)沒有復(fù)制原來數(shù)組,只在列主序打平時(shí)復(fù)制了原數(shù)組,返回的是一個(gè)數(shù)組的視圖
faltten()在所有情況下打平時(shí)都復(fù)制了原來的數(shù)組,分配了新的內(nèi)存

#flatten打平的情況下 arr_[0] = 50 print(arr_) print(arr)

array([ 50., 2., 3., 4., 5., 6., 7., 8., 9., 10., 11., 12., 13.,
14., 15., 16., 17., 18., 19., 20., 21., 22., 23., 24.])
array([[ 1., 2., 3., 4., 5., 6.],
[ 7., 8., 9., 10., 11., 12.],
[13., 14., 15., 16., 17., 18.],
[19., 20., 21., 22., 23., 24.]])
flatten()不會(huì)影響到原本數(shù)組arr

#ravel打平情況下 arr_2[0] = 100 print(arr_2) print(arr)

array([ 100., 2., 3., 4., 5., 6., 7., 8., 9., 10., 11., 12., 13.,
14., 15., 16., 17., 18., 19., 20., 21., 22., 23., 24.])
array([[ 100., 2., 3., 4., 5., 6.],
[ 7., 8., 9., 10., 11., 12.],
[13., 14., 15., 16., 17., 18.],
[19., 20., 21., 22., 23., 24.]])
ravel()會(huì)影響到原本數(shù)組arr

盡量使用flatten()函數(shù)打平數(shù)組。

總結(jié)

以上是生活随笔為你收集整理的Numpy中的数组变形操作01——reshape() 重塑, flatten()/reval() 扁平化的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。