pandas合并concatmerge和plot画图
生活随笔
收集整理的這篇文章主要介紹了
pandas合并concatmerge和plot画图
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
3.6,3.7pandas合并concat&merge
頭文件:
import pandas as pd import numpy as npconcat基礎(chǔ)合并用法
df1= pd.DataFrame(np.ones((3,4))*0,columns = ['a','b','c','d']) df2= pd.DataFrame(np.ones((3,4))*1,columns = ['a','b','c','d']) df3= pd.DataFrame(np.ones((3,4))*2,columns = ['a','b','c','d'])res = pd.concat([df1,df2,df3],axis=0,ignore_index=True) #axis=0 豎向合并 ignore_index是讓索引重新排序df1= pd.DataFrame(np.ones((3,4))*0,columns = ['a','b','c','d']) df2= pd.DataFrame(np.ones((3,4))*1,columns = ['b','c','d','e'])concat中join用法
#join='outer'可以對(duì)標(biāo)簽不一樣的部分用NAN進(jìn)行填充 #join = 'inter'時(shí)對(duì)標(biāo)簽不一樣的部分去掉 res = pd.concat([df1,df2],join='outer',ignore_index=True)join_axes (新版本刪除了)
join_axes= [df1.index]設(shè)置合并后按照df1的索引進(jìn)行保留
# res = pd.concat([df1,df2],axis=1,join_axes = [df1.index])append添加數(shù)據(jù)
#添加整個(gè)數(shù)據(jù) df1= pd.DataFrame(np.ones((3,4))*0,columns = ['a','b','c','d']) df2= pd.DataFrame(np.ones((3,4))*1,columns = ['a','b','c','d']) df3= pd.DataFrame(np.ones((3,4))*2,columns = ['a','b','c','d']) res = df1.append([df2,df3],ignore_index=True) #上下結(jié)合#添加一行數(shù)據(jù) s1 = pd.Series([1,2,3,4],index=['a','b','c','d']) res = df1.append(s1,ignore_index=True)merge按照key合并
left = pd.DataFrame({'key':['K0','K1','K2','K3'],'A':['A0','A1','A2','A3'],'B':['B0','B1','B2','B3'] }) right = pd.DataFrame({'key':['K0','K1','K2','K3'],'C':['C0','C1','C2','C3'],'D':['D0','D1','D2','D3'] }) #按照key合并 res = pd.merge(left,right,on='key') print(res)merge考慮兩個(gè)key,根據(jù)index進(jìn)行數(shù)據(jù)合并
#若考慮兩個(gè)key,根據(jù)index進(jìn)行數(shù)據(jù)合并 res = pd.merge(left,right,on=['key1','ke2']) #默認(rèn)是'inner':只考慮相同部分 res = pd.merge(left,right,on=['key1','ke2'],how='outer') #outer:全部考慮,不存在的用nan填充merge中indicator
indicator=True時(shí),能展示合并后,哪部分是有某標(biāo)簽數(shù)據(jù),哪部分是沒(méi)有該標(biāo)簽數(shù)據(jù)的
res = pd.merge(left,right,on=['key1','ke2'],how='outer',indicator=True)merge中l(wèi)eft_index和right_index
根據(jù)數(shù)據(jù)索引進(jìn)行結(jié)合
res = pd.merge(left,right,left_index=True,right_index=True,how=‘outer’)
merge中suffixes
suffixes來(lái)區(qū)分標(biāo)簽相同但是數(shù)值不同的數(shù)據(jù)
boys = pd.DataFrame({'K':['K0','K1','K2'],'age':[1,2,3]}) girls = pd.DataFrame({'K':['K0','K1','K2'],'age':[4,5,6]})res = pd.merge(boys,girls,on='K',suffixes=['_boy','_girl'],how='inner')3.8pandas plot畫(huà)圖
頭文件:
import pandas as pd import numpy as np import matplotlib.pyplot as pltSeries的數(shù)據(jù)(類(lèi)似數(shù)組)
data = pd.Series(np.random.randn(1000),index=np.arange(1000)) data = data.cumsum() #對(duì)生成的1000個(gè)數(shù)據(jù)進(jìn)行累加 data.plot() plt.show()DataFrame數(shù)據(jù)(類(lèi)似矩陣)
折線(xiàn)圖:
data = pd.DataFrame(np.random.randn(1000,4),index = np.arange(1000),columns = list("ABCD")) data = data.cumsum() data.plot() plt.show()散點(diǎn)圖
ax = data.plot.scatter(x='A',y='B',color='DarkBlue',label = 'Class 1') data.plot.scatter(x = 'A',y = 'C',color = 'DarkGreen',label='Class 2',ax=ax) plt.show() 創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的pandas合并concatmerge和plot画图的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 梦到冰箱里有老鼠是什么意思
- 下一篇: 梦到老公给我好多钱是什么预兆