Python Numpy二維陣列和Numpy中的軸

2021-10-01 10:41:03 字數 1961 閱讀 9036

二維陣列的表示方法:

python原生:列表的列表

numpy:ndarray

pandas:dataframe

二維ndarray與python list

1.ndarry效能更好

3.訪問語法差別:a[1,2](numpy ndarray)、a[1][2](python list)

numpy的軸

axis的用法:

0:按列計算

1:按行計算

import numpy as np

arr = np.array([

[27.93,28.18,29.39,40.52,26.26],

[58.08,50.61,51.62,48.55,54.03],

[38.67,31.73,57.91,59.24,49.08],

[45.83,31.48,45.94,71.21,46.53],

[70.26,55.96,53.81,58.48,43.23],

[46.61,22.73,45.77,63.63,56.73],

[49.73,40.47,69.13,55.16,58.71],

[34.02,42.02,28.75,34.90,26.43],

[56.64,31.39,43.43,54.00,44.97],

[57.28,64.21,55.70,68.03,54.16]

])#某一天所有店的情況(某行)

print(arr[1,:])

#某一天幾個店的情況(某行)

print(arr[1,1:3])

#某家店十天的情況(某列)

print(arr[:,3])

#計算第一天銷量最大的店10天平均銷量

print(arr[:,arr[0,:].argmax()].mean())

#所有水果店的天均銷量

for i in range(5):

print(arr[i,:].mean())

#axis用法

print(arr.mean(axis=1))

#計算每家水果店平均銷量

for i in range(5):

print(arr[:,i].mean())

#axis用法

print(arr.mean(axis=0))

舉例:

# 輸入乙個二維陣列的某個元素的座標,計算出以這個元素為左上角元素的2*2小矩陣的四個元素的均值。

## 比如,對於矩陣

## [[1, 2, 3, 4],

# [5, 6, 7, 8],

# [9, 10, 11, 12],

# [13, 14, 15, 16]]

## 當輸入(0, 1)(即左上角行編號為0,列編號為1)時,計算結果為4.5(2,3,6,7四個數字的平均數)。

squre = np.array([[1, 2, 3, 4],

[5, 6, 7, 8],

[9, 10, 11, 12],

[13, 14, 15, 16]])

def mini_squre(squre, top_row, left_column):

return squre[ top_row:top_row + 2, left_column:left_column + 2 ].mean()

input_top = int(input("輸入左上角行編號:"))

input_left = int(input("輸入左上角列編號:"))

if (input_top >= 0 and input_top <= len(squre[:, 0]) - 2 and

input_left >= 0 and input_left <= len(squre[0, :]) - 2):

print(mini_squre(squre, input_top, input_left))

二維陣列 二維陣列和指標

include using namespace std int main 如上面這段程式所示,通過取位址符 指標 p 獲得了變數 a 的位址,那麼解引用符 就可以從 p 中得到變數 a 的值。也就是說,p a和 p a是等價的。p 是變數 a 的位址,從 p 中就可以取出 a 的值。反之,能從 p ...

陣列 二維陣列

一組相同型別的資料組合,是一種引用型別。陣列名稱不是固定的,與其存放的資料的型別有關。如 存放int型別的資料,陣列名稱 int 存放字串資料,陣列名稱 string 存放scanner型別的資料,陣列名稱 scanner陣列中的每個資料,都是這個陣列的元素。1 宣告 元素型別 變數名 元素型別 變...

陣列 二維陣列

陣列,從名字很簡單看出就是數字組合,一堆數 一堆元素 在一起。然後看一下怎麼定義,怎麼初始化。陣列的動態初始化 初始化之後每個元素的儲存內容為其對應資料型別的預設值。資料型別 陣列名 new 陣列型別 大小 int arr new int 5 資料型別 陣列名 new 陣列型別 大小 int arr...