大資料基本公式——一:基礎

青岛programmer發表於2024-07-20

7課 說白了np.array用來創造陣列

np.linespace(0,10,100) 產生0-10之間均勻分佈的100個數字 不寫100的話就50個

dtype=np.float32 unit8是圖片一般0-255 unit16 32 64 無符號整型

a.astype(np.int16)

8課

切片如果改變,原來的陣列的值也會改變,因為資料量太大了。佔記憶體。所以用copy方法在記憶體中搞 .copy()深複製

切片簡寫a[0][2][1]簡寫成a[0,2,1]

a[:,2,1]維度全取,第二行,第一個

9課

a[a>10] 裡面是布林,再選陣列

a[(a>5)&(a<20)]

10課

標量加最簡單,同形加是對應元素相加,相同形狀。行相加,列相同行不一,就讓那一行給他們輪流發生關係

廣播複用一行對應對方兩行

a.reshape(2,1) 原來是[0,1] 變成 ([0],[1] )

a.T轉置,將2X5變成5X2

11課

連線用元祖np.concatnate((a,b))由陣列組成的元祖進行合併,我理解所謂合併就是將兩個陣列合並

如果都是一行就合在一起了,

合併還用stack方法np.stack([1,2,3,4],[5,6,7,8])每一個數祖做為元素合併

concatnate 不增加維度,而stack是堆起來

新增是用np.append(a,5) 但是:高圍陣列用append時如果不指定軸會讓其合併,並且展開。需要注意的一點 列新增元素,再看看,值得複習一下也就是加一列

np.append(a,[[5],[6]]) 這就是給每行的最後邊加上一個值

np.unique(a)

12課

np.mean(a) np.sun(a) a.sun是物件方法

a.mena(axis=1)

第一次講方差

13課

np.random.randn(10)正態分佈的隨機數 np.random.rand——————20課講,0-1的隨機數

a=np.sort(a)要先賦值才等於a.sort____頂級方法改變不了原值

a.reshape(2,5)等價於 a.shape=2.5

np.argsort(a)返回排序後的索引

np.argmax(a)返回最大值 索引

np.where(a>2)___》2的索引 不常用,一般用a[a>2]

np.where(cond,a,b)______值 得一記,當cond為True時從a取,false從b取

(a>2).sun() 算出a>2的數量

14課

np.random.randn(10)正態分佈隨機數

np.random.normal(size=(3,4))標準分佈隨機數_______均值為0方差為1

np.random.randint(1,10,(3,4))最小值 ,最大值 ,3行4列正值 ——————自然數隨機數

np.random.permutation(len(a)) 亂序 生成一個從0到這個值之音的一個亂序的值

np.random.choice([1,2,3,4,5,6]) 隨機選一個數 可以再加一個引數size=2每次取出2個

np.random.seed(5) np.random.randn(3,4) 前面加上了seed後面再執行就是一樣的結果了

np.save(11.txt,a) np.load(全路徑)

np.savetxt(11.txt,a) 儲存為文字形式 np.loadtxt(11.txt,a)

15課 ——————marker,linewidth,color

plt.plot(x,y label='a公司')

plt.legend()顯示label的字樣————不然沒有

plt.plot(x,color='r',linestyle='-.',linewidth=5,marker='^')

plt.xlabel('age')給x加標籤

plt.title('student')

plt.xlim___x軸的取值範圍

plt.ylim___y軸的取值範圍

x.ticks([0,4,8],['baby','young','adult'])取值標記——————在哪些關鍵位置設定名字

18課

plt.grid()加網格

plt.style.use('ggplot')

import seaborn直接這樣寫就是引入了

19課

plt.bar(x,y,bottom=y)用y做底和別的圖對比————有兩個圖的情況

plt.figure(figsize=(10,10))視始化一張畫布 預設會有還給我

直方圖plt.hist (data,bins=40)裡面的bins是分成多少份

箱形圖的異常值:這個 值+大於上四分位+1.5倍上四分位-下四分位,或:小於下四分位-上四分位-下四分位的1.5倍

線形圖plt.scatter() 裡面的s= 是管點的大小

20課

堆積圖(佔有率)

plt.stackplot( comp,y1,y2,y3,y4,labels=列表,就顯示名字了) plt.xticks([1,2,3,4],['2011','2012','2013','2014'])加上y軸的名字

餅圖:plt.pie

labels=['apple','micro','yahoo','google']
size=[15,30,45,10]

explode=(0.1,0,0,0)
plt.pie(size,labels=labels,autopct="%1.1f%%",explode=explode,startangle=90)

列寬為1,小數點後為1,f為float

22課

plt.subplot

plt.suptitle('')總標題

24課

plt.rcParams['font.ans-serif']=['SimHei']

顯示中文:plt.rcParams['font.sans-serif']=['SimHei'] 顯示負號: plt.rcParams['axes.unicode_minus']=False

plt.xticks([],[],rotation=30)讓字進行旋轉

plt.savefig('位置/xxx.jpg')

在直譯器中,如果想讓圖片顯示出來,可能要先儲存圖片再.show()才行   

相關文章