1. 程式人生 > >numpy數學數據處理

numpy數學數據處理

bools 均值 intersect all 一個數 總數 相加 pre argmin

數學和統計方法

  • sum 對數組中全部或某軸向的元素求和。零長度的數組的sum為0。
  • mean 算術平均數。零長度的數組的mean為NaN。
    import numpy as np
    import numpy.random as np_random
    
    arr = np.random.randn(5,4)
    print(arr)
    print(arr.sum())  #求總和:所有元素相加
    print(arr.mean()) #求平均值:所有元素相加後除以元素總數
    print(arr.mean(axis=1))
    
    print(arr.cumsum(0))

  • std, var 分別為標準差和方差,自由度可調(默認為n)。
  • min, max 最大值和最小值
  • argmin 分別為最大值和最小值的索引
  • cumsum 所有元素的累計和
  • cumprod 所有元素的累計積

Any、All測試布爾型數組

bools = np.array([False,True,False,False])
print(bools.any())  #有一個為True就返回True
print(bools.all())  #所有為True返回True

sort排序

arr = np_random.randn(8)
arr.sort()
print(arr)

arr = np_random.randn(5,3)
arr.sort(
1) #指定軸排序


去重與其他集合運算

  • unique(x) 計算x中的唯一元素,並返回有序結果。
  • intersect1d(x, y) 計算x和y中的公共元素,並返回有序結果。
  • union1d(x, y) 計算x和y的並集,並返回有序結果。
  • in1d(x, y) 得到一個表述"x的元素是否包含於y"的布爾型數組
  • setdiff1d(x, y) 集合的差,即元素在x中且不在y中
  • setxor1d(x, y) 集合的異或,即存在於一個數組中但不同時存在於兩個數組中的元素。
  • names = np.array([Bob, Joe, Will, Bob, Will, 
    Joe, Joe]) print(np.unique(names)) #Bob‘, ‘Joe‘, ‘Will‘ ints = np.array([3, 3, 3, 2, 2, 1, 1, 4, 4]) print(np.unique(ints)) #1 2 3 4 #‘查找數組元素是否在另一數組‘ values = np.array([6, 0, 0, 3, 2, 5, 6]) print(np.in1d(values, [2, 3, 6]))

numpy數學數據處理