聚合运算
一维聚合
python内置函数没有numpy库的函数性能高。
import numpy as npnp.random.seed(666)L = np.random.random(100)sum(L) # 49.20482630064383np.sum(L) # 49.20482630064384big_array = np.random.rand(1000000)%timeit sum(big_array)%timeit np.sum(big_array)# 432 ms ± 24.7 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)# 2.6 ms ± 228 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)# min, maxnp.min(big_array) # 4.459899819675428e-06np.max(big_array) # 0.9999999038835905big_array.min() # 4.459899819675428e-06big_array.max() # 0.9999999038835905big_array.sum() # 499765.40298751614
高维聚合
其他聚合
arg运算
Fancy Indexing
比较
数组转置
array.T 可以得到数组对象的转置后的结果。
print(array002)print("转置后:\n")print(array002.T)
[[ 1 2 3 4][ 5 6 7 8][ 9 10 11 12]]转置后:[[ 1 5 9][ 2 6 10][ 3 7 11][ 4 8 12]]
数组堆叠
首先新进两个数组,之后依此使用vstack进行纵向堆叠和使用hstack进行横向堆叠。
arr1=np.array([1,2,3])arr2=np.array([4,5,6])print('纵向堆叠后:\n',np.vstack((arr1,arr2)),'\n横向堆叠后:\n',np.hstack((arr1,arr2)))
纵向堆叠后:[[1 2 3][4 5 6]]横向堆叠后:[1 2 3 4 5 6]
类型转换
arr3=np.array([[1,2,3],[4,5,6]])print("转换前的Ndarray是:\n",arr3)import pandas as pddfFromNdarray=pd.DataFrame(arr3)print("Ndarray转为DataFrame的结果是:\n",dfFromNdarray)
转换前的Ndarray是:[[1 2 3][4 5 6]]Ndarray转为DataFrame的结果是:0 1 20 1 2 31 4 5 6
arrFromDataFrame=dfFromNdarray.valuesprint("DataFrame转为Ndarray的结果是:\n",arrFromDataFrame)
DataFrame转为Ndarray的结果是:[[1 2 3][4 5 6]]





