NumPy庫總包含兩種基本的數據類型:矩陣和數組,矩陣的使用相似Matlab,本實例用得多的是數組array。python
shape()
shape是numpy函數庫中的方法,用於查看矩陣或者數組的維素
>>>shape(array) 若矩陣有m行n列,則返回(m,n)
>>>array.shape[0] 返回矩陣的行數m,參數爲1的話返回列數n數組
tile()
tile是numpy函數庫中的方法,用法以下:
>>>tile(A,(m,n)) 將數組A做爲元素構造出m行n列的數組函數
sum()
sum()是numpy函數庫中的方法
>>>array.sum(axis=1)按行累加,axis=0爲按列累加測試
argsort()
argsort()是numpy中的方法,獲得矩陣中每一個元素的排序序號
>>>A=array.argsort() A[0]表示排序後 排在第一個的那個數在原來數組中的下標大數據
dict.get(key,x)
Python中字典的方法,get(key,x)從字典中獲取key對應的value,字典中沒有key的話返回0code
sorted()
python中的方法排序
min()、max()
numpy中有min()、max()方法,用法以下
>>>array.min(0) 返回一個數組,數組中每一個數都是它所在列的全部數的最小值
>>>array.min(1) 返回一個數組,數組中每一個數都是它所在行的全部數的最小值內存
listdir('str')
python的operator中的方法
>>>strlist=listdir('str') 讀取目錄str下的全部文件名,返回一個字符串列表字符串
split()
python中的方法,切片函數
>>>string.split('str')以字符str爲分隔符切片,返回listget
numpy中讀取.csbv文件
>>>(1)第一種方法使用loadtxt
# load the CSV file as a numpy matrix
dataset = np.loadtxt('./../DataAir/testdata.csv',delimiter=',')
# separate the data from the target attributes
X_test = dataset[:,0:6]
y_test = dataset[:,6]
>>>(2)第二種方法使用csv.read
csvfile = open('./../testData/testdata.csv')
reader1 = csv.reader(csvfile)
mTest = 0
vectorUnderTest = zeros((1,6)) #1*6
for lineT in reader1: #每一行對應一個測試數據
classNumStr = int(lineT[6])
for k in range(6):
lineT[k] = float(lineT[k]) #將.csv文件讀取出來的字符列表轉爲float類型
vectorUnderTest[:,k] = lineT[k] #將樣本加入大數據集矩陣中
>>>(3)第三種方法使用readline,readlines,read
fh = open('c:\\autoexec.bat') for line in fh.readlines(): print line .readline() 和 .readlines() 之間的差別是後者一次讀取整個文件,象 .read() 同樣。 .readlines() 自動將文件內容分析成一個行的列表,該列表能夠由 Python 的 for ... in ... 結構進行處理。 另外一方面,.readline() 每次只讀取一行,一般比 .readlines() 慢得多。僅當沒有足夠內存能夠一次讀取整個文件時,才應該使用 .readline()。