http://old.sebug.net/paper/books/scipydoc/numpy_intro.html
1.numpy扩展库的简单使用
(1)ones
import numpy as n arr = n.ones((3,4)) print arr ------------------
[[ 1. 1. 1. 1.] [ 1. 1. 1. 1.] [ 1. 1. 1. 1.]]
-----------------
(2)arange
import numpy as np a = np.arange(1, 5)
----------------------
[1 2 3 4]
-----------------------
(3)power print np.power(a, 2).sum()
-------------------------
30
-------------------------- (4) add print np.add(a, np.arange(4))
----------------------------
[1 3 5 7]
------------------------------ (5)sin from numpy import * from math import sin arr1 = array([1,2,3]) print arr1 arr2 = array([(1,2,3),(4,5,6)]) print arr2
(6)zeros print zeros((2,2)) print arange(1,5,0.5) print arr1*arr2 print arr1+arr2 print arr1>5 arr3 = array([(1,2,3),(4,5,6)]) for i in range(len(arr3)): print len(arr3[i]) for j in range(len(arr3[i])): print sin(arr3[i][j])
(6)shape , reshapeprint arr3.shape#维度arr4 = arr3.reshape(3,2)print arr4
(7)sum
arr3 = array([(1,2,3),(4,5,6)])print arr3.sum()print arr3.sum(axis=0)#求列的和print arr3.sum(axis=1)#求行的和
-----------------------------------
21
[5 7 9]
[ 6 15]-----------------------------------
(7) vstack ,hstack ,切片import numpy as np a = np.array([(1, 2, 3),(4,5,6)]) b = np.array([2, 3, 4]) c=np.array([2,3,4,5,6])print np.vstack((a,b))#该方法要求b,a的列数相同 print np.hstack((c,b))#该方法要求b,c的行数相同 print a[:2]------------------------------------------------[[1 2 3]
[4 5 6]
[2 3 5]]
[2 4 5 6 2 3 5]
[[1 2 3]
[4 5 6]]-------------------------------------------------
from numpy import * b = np.array([2, 3, 5,4]) c=np.array([2,4,5,6]) print where(c>2,c,b)-------------------------[2 4 5 6]
------------------------
(8)fromfunction
def fun(x,y): return (x+1)*(y+1) arr = fromfunction(fun,(5,2)) print arr------------------------------[[ 1. 2.]
[ 2. 4.]
[ 3. 6.]
[ 4. 8.]
[ 5. 10.]]--------------------------------
(9)具有ufunc功能的函数(),对每一个元素进行处理,并且是基于c语言,因此计算速度非常快
print np.add.accumulate([2,3,8]) print np.multiply.accumulate([2,3,8])--------------------------------------------[ 2 5 13]
[ 2 6 48]--------------------------------------------