pandas數據分析讀書筆記(四)

Pd.merge(left = df1, right = df2, on = ‘key’, left_on = ‘lkey’, right_on = ‘rkey’, how = ‘inner’, suffixes = [‘_left’, ’_right’], left_index = True, right_index = True),將兩個df連起來,就是把列加起來,on參數是指定列進行連接,還可以根據多列進行連接,如果兩個df的列名不同,那也可以分別進行指定。How代表連接的方式,有inner、outer、left、right,分別代表內連接,外連接,左外連接,右外連接。Suffixes是用來處理重複列名的問題,left_index將左側的行索引用作其連接鍵,right_index用右邊的索引作爲連接鍵,還可以混合用,左邊用索引,右邊用列

 

Left2.join(right2, how = ‘outer’, on = ‘key’),按索引進行合併,左邊是索引,右邊是索引,還可以指定右邊的列

 

Pd.concat([s1, s2], axis = 0, join = ‘outer’, join_axes = [‘a’, ‘c’, ‘b’], ignore_index, keys = [‘one’, ‘two’, ‘three’]),s1和s2是兩個DataFrame或者Series,是從行的角度進行疊加的,相當於磚頭一樣一塊一塊疊加起來,還可以將axis = 1,則是從列方向進行疊加,join參數是指合併的方式,inner是交易,outer是並集(默認是並集),還可以用join_axes指定疊加的列,ignore_index參數是將兩個合併的DataFrame的行索引給刪掉,生成新的從0開始是索引,keys是用來生成層次化索引

 

Np.where(pd.isnull(a), b, a),類似於if else

 

Df.stack(),將數據的列旋轉爲行

Df.unstack(),將數據的行旋轉爲列,默認是將最內層旋轉爲列,當然也可以傳入層級的編號或者名稱,如果是多層索引的話,那旋轉的行將會成爲最低層級的列

 

Fig. = plt.figure()

Ax1 = fig.add_subplots(2, ,2, 1)

Ax1.hist(np.random.randn(100), bins = 20, color = ‘k’, alpha = 0.5)

以上是先創建一個figure對象,然後在這個fig對象上創建多個subplot,然後在這個ax上畫圖。

 

還有種另外的方法,能夠同時創建一個figure,以及返回一些subplot對象numpy數據,比如:

Fig, axes = plt.subplots(2, 3),返回figure對象,以及一個2 * 3的numpy數組,可以通過這麼調用:axes[0, 1]

 

Ax[0, 1].plot(x, y, ‘g--’),g是顏色green,--是線型,表示虛線

Ax[0, 1].set_xticks([0, 250, 500, 750, 1000])用來畫刻度

Ax[0, 1].set_xticklabels([‘one’, ‘two’, ‘three’, ‘four’, ‘five’], rotation = 30),這個函數是給刻度加上標籤

ax[0, 1].legend(loc = ‘best’),添加圖例,best指自動去設置位置,舉個例子,下面這個就是圖例:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章