python資料分析、挖掘初學(一):numpy的簡單使用
阿新 • • 發佈:2018-12-21
開新篇:資料分析學習筆記。
直接在可執行程式碼的基礎上進行註釋說明,首先學習numpy的基礎語法
#numpy import numpy as np def main(): lst=[[1,3,5],[2,4,6]] print(type(lst))#型別 np_lst=np.array(lst) print(type(np_lst)) np_lst=np.array(lst,dtype=np.float)#指定型別 print(np_lst.shape)#行列 print(np_lst.ndim)#維數 print(np_lst.dtype)#型別 print(np_lst.itemsize)#每個元素的大小 print(np_lst.size)#大小=元素個數 if __name__=="__main__": main()
常用的numpy陣列:
#常用陣列 import numpy as np def main(): lst=[[1,2,3],[4,5,6]] print(np.zeros([2,4]))#行為2,列為4的全零矩陣 print(np.ones([3,5]))#……全1矩陣 print("Rand;") print(np.random.rand(2,4))#產生指定範圍的隨機數 print(np.random.rand())#隨機產生隨機數 print("RandInt:") print(np.random.randint(1,10,3))#隨機產生1~10之間的3個整數 print("Randn:") print(np.random.randn(2,4))#2行4列的服從標準正態分佈的隨機數 print("Choice:") print(np.random.choice([10,20,30]))#指定隨機產生數值的隨機數 print("Distribute:") print(np.random.beta(1,10))#生成服從beta分佈的隨機數 if __name__=="__main__": main()
一些常用的numpy操作:
#一些基本的numpy操作 import numpy as np def main(): lst=[[1,2,3],[4,5,6]] print(np.arange(1,11).reshape([2,5]))#不包括11,設定行列,5可預設為-1 print(np.exp(lst))#nparray可直接對list本身的每個元素進行操作 print(np.exp2(lst)) print(np.sqrt(lst)) print(np.sin(lst)) print(np.log(lst)) lst = np.array([[[1,2,3,4],[5,6,7,8]],[[7,8,9,10],[10,11,12,13]],[[12,13,14,15],[15,16,17,18]]]) print(lst.sum())#對的每個元素進行求和 print(lst.max())#最大值 print(lst.min())#最小值 lst1=np.array([10,11,12,13]) lst2=np.array([20,30,40,50]) print("Add:") print(lst1+lst2)#兩個list每個對應位置的元素的和 print("Sub:") print(lst1-lst2) print("Mul:") print(lst1*lst2) print("Div:") print(lst1/lst2) print("Square:") print(lst1**2)#平方 print("Dot;")#點乘 print(np.dot(lst1.reshape([2,2]),lst2.reshape([2,2]))) print(np.concatenate((lst1,lst2)))#拼接 print(np.hstack((lst1,lst2)))#一行 print(np.hstack((lst1,lst2)))#按照原行數進行拼接 print(np.split(lst1,2))#分割2份 print(np.copy(lst1))#拷貝 if __name__=="__main__": main()