Author: 杜七
一畔勤、基礎(chǔ)類型變量的賦值等等
1,數(shù)組賦值和操作
>>> import numpy as np
>>> a = np.array([1,2,3,4])
>>> a.dtype # 數(shù)組類型
dtype('int32')
>>> a
array([1, 2, 3, 4])
>>> a.shape # 數(shù)組大小
(4,)
>>> c.shape = 4,3
>>> c
array([[ 1, 2, 3],
[ 4, 4, 5],
[ 6, 7, 7],
[ 8, 9, 10]])
>>> a[0] # Python的subindex從0開始
1
>>> np.array([[1, 2, 3, 4],[4, 5, 6, 7], [7, 8, 9, 10]], dtype=np.float) # 可以制定元素的類型
>>> a[1:-1:2] # 范圍中的第三個參數(shù)表示步長蕊温,2表示隔一個元素取一個元素
>>> x = np.arange(5,0,-1)
>>> x
array([5, 4, 3, 2, 1])
>>> x[np.array([True, False, True, False, False])]
x = np.random.rand(10) # 產(chǎn)生一個長尾為10袱箱,元素值為0-1的隨機數(shù)組
2,更快的數(shù)組賦值
上面都是先創(chuàng)建一個python序列义矛,然后通過array函數(shù)來轉(zhuǎn)化发笔,效率比較低。NUmpy里面也有專門的創(chuàng)建數(shù)組的函數(shù)凉翻,比如:
np.arrange(0,1,0.1) # 不包括end值
np.linspace(0,1,12) # 包括end值
還可以使用frombuffer, fromstring,fromfile等函數(shù)可以從字節(jié)序列創(chuàng)建數(shù)組了讨,比如:
s="Hello world!"
np.fromstring(s,dtype=np.char)
>>> def func(i):
return i%4+1
>>> np.fromfunction(func, (10,))
array([ 1., 2., 3., 4., 1., 2., 3., 4., 1., 2.])
##結(jié)構(gòu)數(shù)組,創(chuàng)建一個dtype的persontype
persontype = np.dtype({
'names':['name', 'age', 'weight'],
'formats':['S32','i', 'f']})
a = np.array([("Zhang",32,75.5),("Wang",24,65.2)],
dtype=persontype) #
二、畫圖
1)matplotlib畫圖
# -*- coding: utf-8 -*-
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0,10,1000)
y = np.sin(x)
z = np.cox(x**2)
plt.figure(figsize = (8,4)) # 創(chuàng)建畫圖對象
plt.plot(x,y,label="$sin(x)$",color="red",linewidth=2)
plt.plot(x,z,"b--",label="$con(x^2)$")
plt.xlabel("Times(s)")
plt.ylabel("Volt")
plt.title("Pyplot first example")
plt.ylim(-1,2,1.2)
plt.legend()
plt.show()