numpy的數學基本操作

import numpy as np
import pandas as pd

ar=np.arange(0,7)*5; ar
# array([ 0,  5, 10, 15, 20, 25, 30])

ar=np.arange(5) ** 4 ; ar
# array([  0,   1,  16,  81, 256])

ar ** 0.5
# array([ 0.,  1.,  4.,  9., 16.])

ar=3+np.arange(0, 30, 3); ar
# array([ 3,  6,  9, 12, 15, 18, 21, 24, 27, 30])

ar2=np.arange(1,11); ar2
# array([ 1,  2,  3,  4,  5,  6,  7,  8,  9, 10])

print(ar)
print(ar2)
# [ 3  6  9 12 15 18 21 24 27 30]
# [ 1  2  3  4  5  6  7  8  9 10]

ar+ar2
# array([ 4,  8, 12, 16, 20, 24, 28, 32, 36, 40])

ar/ar2
# array([3., 3., 3., 3., 3., 3., 3., 3., 3., 3.])

ar**ar2
# array([              3,              36,             729,           20736,
#                 759375,        34012224,      1801088541,    110075314176,
#          7625597484987, 590490000000000])

ar=np.array([[1,1],[1,1]]); ar
# array([[1, 1],
#        [1, 1]])

ar2=np.array([[2,2],[2,2]]); ar2
# array([[2, 2],
#        [2, 2]])

ar*ar2
# array([[2, 2],
#        [2, 2]])

ar.dot(ar2)
# array([[4, 4],
#        [4, 4]])

ar=np.arange(1,5); ar
# array([1, 2, 3, 4])

ar2=np.arange(5,1,-1); ar2
# array([5, 4, 3, 2])

ar < ar2
# array([ True,  True, False, False])

ar != ar2
# array([ True,  True, False,  True])


ar=np.arange(0,6); ar
# array([0, 1, 2, 3, 4, 5])

ar2=np.arange(0,8); ar2
# array([0, 1, 2, 3, 4, 5, 6, 7])

ar*ar2
# 長度不同,會發生錯誤


ar=np.array([[1,2,3],[4,5,6]]); ar
# array([[1, 2, 3],
#        [4, 5, 6]])

ar.T
# array([[1, 4],
#        [2, 5],
#        [3, 6]])

np.transpose(ar)
# array([[1, 4],
#        [2, 5],
#        [3, 6]])

ar.reshape(6,)
# array([1, 2, 3, 4, 5, 6])

ar=np.arange(1,5); ar
# array([1, 2, 3, 4])

ar.prod()
# 24

ar.sum()
# 10

ar=np.array([np.arange(1,6),np.arange(1,6)]); ar
# array([[1, 2, 3, 4, 5],
#        [1, 2, 3, 4, 5]])

#Columns
np.prod(ar,axis=0)
# array([ 1,  4,  9, 16, 25])

#Rows
np.prod(ar,axis=1)
# array([120, 120])

ar=np.array([[2,3,4],[5,6,7],[8,9,10]]); ar
# array([[ 2,  3,  4],
#        [ 5,  6,  7],
#        [ 8,  9, 10]])

ar.sum()
# 54

np.median(ar)
# 6.0

arr = np.random.randn(5, 4); arr
# array([[ 1.57393807,  0.34341465,  0.18690496,  0.87537642],
#        [ 0.30326534,  0.95078482, -0.06609053,  0.57458184],
#        [ 0.01752049, -0.9984003 , -0.32701152,  1.180956  ],
#        [ 0.25866959, -0.54109039,  0.1545014 , -0.70679129],
#        [-1.09377154,  0.63480085,  0.23812143, -0.84030038]])

rand = np.random.RandomState(42)
arr = rand.randn(5,4); arr
# array([[ 0.49671415, -0.1382643 ,  0.64768854,  1.52302986],
#        [-0.23415337, -0.23413696,  1.57921282,  0.76743473],
#        [-0.46947439,  0.54256004, -0.46341769, -0.46572975],
#        [ 0.24196227, -1.91328024, -1.72491783, -0.56228753],
#        [-1.01283112,  0.31424733, -0.90802408, -1.4123037 ]])

arr.mean()
# -0.17129856144182892

arr.mean(axis=0)
# array([-0.19555649, -0.28577483, -0.17389165, -0.02997128])

arr.mean(axis=1)
# array([ 0.63229206,  0.4695893 , -0.21401545, -0.98963083, -0.75472789])
1個讚