成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

關(guān)于合并python DataFrame的方法總結(jié)

89542767 / 554人閱讀


  小編寫這篇文章的主要目的,主要是給大家做個(gè)詳細(xì)的解答,詳細(xì)的解答關(guān)于python DataFrame相關(guān)方面的知識(shí),希望可以為各位讀者帶來更多的幫助。


  python DataFrame的合并方法


  Python的Pandas針對DataFrame,Series提供了多個(gè)合并函數(shù),通過參數(shù)的調(diào)整可以輕松實(shí)現(xiàn)DatafFrame的合并。


  首先,定義3個(gè)DataFrame df1,df2,df3,進(jìn)行concat、merge、append函數(shù)的實(shí)驗(yàn)。


  df1=pd.DataFrame([[1,2,3],[2,3,4]],columns=['a','b','c'])
  df2=pd.DataFrame([[2,3,4],[3,4,5]],columns=['a','b','c'])
  df3=pd.DataFrame([[1,2,3],[2,3,4]],columns=['a','b','d'])
  df1
  a b c
  0 1 2 3
  1 2 3 4
  df2
  a b c
  0 2 3 4
  1 3 4 5
  df3
  a b d
  0 1 2 3
  1 2 3 4

  #concat函數(shù)


  pandas中concat函數(shù)的完整表達(dá),包含多個(gè)參數(shù),常用的有axis,join,ignore_index.


  concat函數(shù)的第一個(gè)參數(shù)為objs,一般為一個(gè)list列表,包含要合并兩個(gè)或多個(gè)DataFrame,多個(gè)Series


 pandas.concat(objs,axis=0,join='outer',join_axes=None,ignore_index=False,
  keys=None,levels=None,names=None,verify_integrity=False,
  copy=True)


  1.axis表示合并方向,默認(rèn)axis=0,兩個(gè)DataFrame按照索引方向縱向合并,axis=1則會(huì)按照columns橫向合并。


  pd.concat([df1,df2],axis=1)
  a b c a b c
  0 1 2 3 2 3 4
  1 2 3 4 3 4 5


  2.join表示合并方式,默認(rèn)join=‘outer’,另外的取值為’inner’,只合并相同的部分,axis=0時(shí)合并結(jié)果為相同列名的數(shù)據(jù),axis=1時(shí)為具有相同索引的數(shù)據(jù)


  pd.concat([df2,df3],axis=0,join='inner')
  a b
  0 2 3
  1 3 4
  0 1 2
  1 2 3
  pd.concat([df2,df3],axis=1,join='inner')
  a b c a b d
  0 2 3 4 1 2 3
  1 3 4 5 2 3 4


  3.ignore_index表示索引的合并方式,默認(rèn)為False,會(huì)保留原df的索引,如果設(shè)置ignore_index=True,合并后的df會(huì)重置索引。


  pd.concat([df1,df2],ignore_index=True)
  a b c
  0 1 2 3
  1 2 3 4
  2 2 3 4
  3 3 4 5


  #merge函數(shù)


  merge函數(shù)是pandas提供的一種數(shù)據(jù)庫式的合并方法。


  on可以指定合并的列、索引,how則是與數(shù)據(jù)庫join函數(shù)相似,取值為left,right,outer,inner.left,right分別對應(yīng)left outer join,right outer join.


 pandas.merge(left,right,how='inner',on=None,left_on=None,right_on=None,
  left_index=False,right_index=False,sort=False,
  suffixes=('_x','_y'),copy=True,indicator=False,
  validate=None):


  merge函數(shù)可以通過pandas.merge(df1,df2)、df1.merge(df2)兩種形式來實(shí)現(xiàn)兩個(gè)DataFrame的合并,df1.merge(df2)是默認(rèn)left=self的情況。


  df_merge=df1.merge(df3,on=['a','b'])
  a b c d
  0 1 2 3 3
  1 2 3 4 4


  #append函數(shù)


  append函數(shù)是pandas針對DataFrame、Series等數(shù)據(jù)結(jié)構(gòu)合并提供的函數(shù)。


df1.append(self,other,ignore_index=False,verify_integrity=False)


  df1.append(df2)與pd.concat([df1,df2],ignore_index=False)具有相同的合并結(jié)果


  df1.append(df2)
  a b c
  0 1 2 3
  1 2 3 4
  0 2 3 4
  1 3 4 5


  把兩個(gè)dataframe合并成一個(gè)


  1.    merage


result=pd.merge(對象1,對象2,on='key')


  2.append


  result=df1.append(df2)
  result=df1.append([df2,df3])
  result=df1.append(df4,ignore_index=True)


  3.join


result=left.join(right,on=['key1','key2'],how='inner')


  4.concat


 pd.concat(objs,axis=0,join='outer',join_axes=None,ignore_index=False,
  keys=None,levels=None,names=None,verify_integrity=False,
  copy=True)
  frames=[df1,df2,df3]
  result=pd.concat(frames)
  result=pd.concat(frames,keys=['x','y','z'])
  result=pd.concat([df1,df4],ignore_index=True)


  上文就為大家介紹完畢了,希望能給大家?guī)硪欢ǖ膸椭?/p>


文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/127776.html

相關(guān)文章

  • python綜合學(xué)習(xí)四之Numpy和Pandas(下)

    摘要:一基礎(chǔ)運(yùn)算二通過上一節(jié)的學(xué)習(xí),我們可以了解到一部分矩陣中元素的計(jì)算和查找操作。相應(yīng)的,在矩陣的個(gè)元素中,最小值即,對應(yīng)索引,最大值為,對應(yīng)索引為。確認(rèn)是否與相同。要使用,首先需要了解他主要兩個(gè)數(shù)據(jù)結(jié)構(gòu)和。 這一節(jié)繼續(xù)學(xué)習(xí)Numpy和Pandas。 一、numpy基礎(chǔ)運(yùn)算二 通過上一節(jié)的學(xué)習(xí),我們可以了解到一部分矩陣中元素的計(jì)算和查找操作。然而在日常使用中,對應(yīng)元素的索引也是非常重要的。...

    yeyan1996 評論0 收藏0
  • 【數(shù)據(jù)科學(xué)系統(tǒng)學(xué)習(xí)】Python # 數(shù)據(jù)分析基本操作[四] 數(shù)據(jù)規(guī)整化和數(shù)據(jù)聚合與分組運(yùn)算

    摘要:數(shù)據(jù)規(guī)整化清理轉(zhuǎn)換合并重塑數(shù)據(jù)聚合與分組運(yùn)算數(shù)據(jù)規(guī)整化清理轉(zhuǎn)換合并重塑合并數(shù)據(jù)集可根據(jù)一個(gè)或多個(gè)鍵將不同中的行鏈接起來。函數(shù)根據(jù)樣本分位數(shù)對數(shù)據(jù)進(jìn)行面元?jiǎng)澐?。字典或,給出待分組軸上的值與分組名之間的對應(yīng)關(guān)系。 本篇內(nèi)容為整理《利用Python進(jìn)行數(shù)據(jù)分析》,博主使用代碼為 Python3,部分內(nèi)容和書本有出入。 在前幾篇中我們介紹了 NumPy、pandas、matplotlib 三個(gè)...

    The question 評論0 收藏0
  • [譯]從列表或字典創(chuàng)建PandasDataFrame對象

    摘要:在這些情況下,了解如何從標(biāo)準(zhǔn)列表或字典創(chuàng)建會(huì)很有幫助。大多數(shù)人會(huì)注意到列的順序看起來不對。這個(gè)問題出現(xiàn)的原因是標(biāo)準(zhǔn)的字典不保留其鍵的順序。列表從創(chuàng)建的另一個(gè)選擇是將數(shù)據(jù)包含在列表結(jié)構(gòu)中。 介紹 每當(dāng)我使用pandas進(jìn)行分析時(shí),我的第一個(gè)目標(biāo)是使用眾多可用選項(xiàng)中的一個(gè)將數(shù)據(jù)導(dǎo)入Pandas的DataFrame 。對于絕大多數(shù)情況下,我使用的 read_excel , read_csv ...

    zhaochunqi 評論0 收藏0
  • Pandas技巧大全:含具體代碼實(shí)現(xiàn)

    摘要:查看數(shù)據(jù)的基本統(tǒng)計(jì)信息。用處是用于數(shù)據(jù)讀寫處理更改提取等一系列操作的包,可以說,所有能實(shí)現(xiàn)的功能,都可以通過代碼輕松實(shí)現(xiàn),因此,對于學(xué)習(xí)非常重要。如果在里,需要翻到最低和最右,而且可能由于溢出無法窮盡可以簡單的實(shí)現(xiàn)。 放在前面的話? ? ????? ? ? ?? ????????這學(xué)期刻意少...

    netmou 評論0 收藏0

發(fā)表評論

0條評論

最新活動(dòng)
閱讀需要支付1元查看
<