天天看點

資料分析Numpy練習 -AI小白進階之路練習

目錄

  • 練習
        • 1、建立 2*2 的數組arr1 元素自定義
        • 2、建立 223 的數組arr2 元素自定義
        • 3、檢視arr2的次元以及形狀
        • 4、将arr2轉為1維
        • 5、将arr1進行轉置
        • 6、生成 4*4 全為1的數組 arr3
        • 7、生成 機關矩陣
        • 8、拓展知識-3維數組資料:圖檔

練習

1、建立 2*2 的數組arr1 元素自定義

import numpy as np

# 建立 2*2 的數組arr1 元素自定義
arr1 = np.array([[1,2],[3,4]])
arr1
           

結果如下圖所示:

資料分析Numpy練習 -AI小白進階之路練習

2、建立 223 的數組arr2 元素自定義

# 方法一
arr2 = np.array([[[1,2,3,],[4,5,6]],[[7,8,9],[10,11,12]]])
arr2

# 方法二
arr2_2 = np.arange(1,13).reshape(2,2,3)
arr2_2
           

結果如下圖所示:

資料分析Numpy練習 -AI小白進階之路練習

3、檢視arr2的次元以及形狀

# 檢視arr2的次元以及形狀
print(arr2.ndim)
print(arr2.shape)
           

結果如下圖所示:

資料分析Numpy練習 -AI小白進階之路練習

4、将arr2轉為1維

# 方法一
arr3 = arr2.reshape(-1)   
print(arr3)
print(arr3.ndim)

# 方法二,扁平化   注意!不該原來的資料arr2的值
arr_f = arr2.flatten()
arr_f

# 方法三,分散化   注意!不該原來的資料arr2的值
arr_r = arr2.ravel()
arr_r

# 方法四,通過arr2的元素下表索引乘積得到
arr_re = arr2.reshape(arr2.shape[0]*arr2.shape[1]*arr2.shape[2])
arr_re
           

結果如下圖所示:

資料分析Numpy練習 -AI小白進階之路練習

5、将arr1進行轉置

# 方法一
arrt = arr1.transpose()
arrt

# 方法二
arr1_0 = arr1.T
arr1_0
           

結果如下圖所示:

資料分析Numpy練習 -AI小白進階之路練習

6、生成 4*4 全為1的數組 arr3

arr3 = np.ones((4,4))
arr3
           

結果如下圖所示:

資料分析Numpy練習 -AI小白進階之路練習

7、生成 機關矩陣

a = [1,0,0,0,1,0,0,0,1]
arr4 = np.array(a).reshape(3,3)
arr4
           

結果如下圖所示:

資料分析Numpy練習 -AI小白進階之路練習

8、拓展知識-3維數組資料:圖檔

from matplotlib import pyplot as plt
# 讀取圖檔資料
img = plt.imread("tiger.png")
print(type(img))
img
           

輸出結果如下:

資料分析Numpy練習 -AI小白進階之路練習
print(img.ndim)
print(img.shape)
           
資料分析Numpy練習 -AI小白進階之路練習
plt.figure(figsize=(14,8))
plt.imshow(img)
plt.show()
           

可得到如下圖:

資料分析Numpy練習 -AI小白進階之路練習

驚不驚喜!意不意外!有意思!哈哈!把之前學到的内容matplotlib的知識點用上了!cool哦!