資料分析系列 之python中擴充庫SciPy的使用

專注的阿熊發表於2021-05-05

import numpy as np

aArray = np.array([(1,2,3),(4,5,6)])

輸入: aArray

輸出: array([(1,2,3),

(4,5,6)])

bArray = np.linspace(1,2,5,endpoint=False)

輸入: bArray

輸出: [1.  1.2 1.4 1.6 1.8]

cArray = np.linspace(1,49,25,dtype=int)

輸入: print(cArray)

輸出: [ 1  3  5  7  9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49]

dArray = np.linspace(1,49,25,dtype=int)

輸入: print(dArray)

輸出: [ 1  3  5  7  9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 50]

# 生成 9*9 的乘法口訣表

np.fromfunction(lambda i,j:(i+1)*(j+1),(9,9))

# 選擇列和行的資料

import numpy as np

x = np.array([[1,2,3],[4,5,6],[7,8,9]])

# 選擇第一列和第三列資料

print(x[:,[0,2]])

[[1 3]

  [4 6]

  [7 9]]

# 選擇第一行和第三行

print(x[::2])

[[1 2 3]

  [7 8 9]]

# 選擇第一列和第三列

print(x[:,::2])

[[1 3]

  [4 6]

  [7 9]]

# 交換行

print(x[::-1])

[[7 8 9]

  [4 5 6]

  [1 2 3]]

# 交換列

print(x[:,::-1])

[[3 2 1]

  [6 5 4]

  [9 8 7]]

# 用函式改變

import numpy as np

x = np.array([[1,2,3],[4,5,6]])

#外匯跟單gendan5.com 由兩行三列變成三行兩列

y = x.reshape(3,2)

或者: y = x.reshape(3,-1)

print(y)

[[1 2]

  [3 4]

  [5 6]]

print(x)

[[1 2 3]

  [4 5 6]]

# 如果真正改變 x

x.resize(3,2)

x = np.array([1,2,3])

y = np.array([4,5,6])

# 垂直方向上拼接

np.vstack((x,y))

[[1 2 3]

  [4 5 6]]

# 水平方向上拼接

np.hstack((x,y))

[1 2 3 4 5 6]

x = np.array([1,2,3])

y = np.array([[4,5,6],[7,8,9]])

# 廣播, x 擴充

print(x+y)

[[ 5  7  9]

  [ 8 10 12]]

y = np.array([[4,5,6],[7,8,9]])

# 沿列求和

print(y.sum(axis=0))

[11 13 15]

# 沿行求和

print(y.sum(axis=1))

[15 24]

# 最小值

print(y.min())

4

# 最大值 9 index

print(y.argmax())

5

# 方差

print(y.var())

2.9166666666666665

# 標準差

print(y.std())

1.707825127659933

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

# 行列式

print(np.linalg.det(x))

-2.0000000000000004

# 逆矩陣

print(np.linalg.inv(x))

[[-2.   1. ]

  [ 1.5 -0.5]]

# 矩陣內積

print(np.dot(x,x))

[[ 7 10]

  [15 22]]


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69946337/viewspace-2770867/,如需轉載,請註明出處,否則將追究法律責任。

相關文章