pandas中合并数据集
數(shù)據(jù)集的合并🔍
1、pandas.merge()
對(duì)于數(shù)據(jù)庫(kù)風(fēng)格的DataFrame進(jìn)行聯(lián)合
- 語(yǔ)法👇:
pandas.merge(left, right, how=‘inner’, on=None)
left:參與合并的左側(cè)DataFrame。
right:參與合并的右側(cè)DataFrame。
how:指DataFrame的連接方式。默認(rèn)為inner,inner是使用兩個(gè)表都有的鍵(多對(duì)多連接 是行的笛卡爾積)——這里可以理解為:比如2對(duì)2,首先左邊的1對(duì)完右邊的1和2之后,在左邊的2對(duì)右邊的1和2,因此結(jié)果中排列組合實(shí)際就是3*2個(gè)結(jié)果;left使用左表中所有的鍵;right使用右表中所有的鍵;outer使用 兩個(gè)表中所有 的鍵。
on:用于連接的列名,必須同時(shí)存在于左右兩個(gè)DataFrame對(duì)象中。如果未指定,則以left和right列名的交集作為連接鍵。
left_on:左側(cè)DataFrame中用作連接鍵的列。
right_on:右側(cè)DataFrame中用作連接鍵的列。
left_index:將左側(cè)的行索引用作其連接鍵。
right_index:將右側(cè)的行索引用作其連接鍵。
sort:根據(jù)連接件對(duì)合并后的數(shù)據(jù)進(jìn)行排序,默認(rèn)為True。(有時(shí)在處理大數(shù)據(jù)集時(shí),禁用該選項(xiàng)可獲得更好的性能)
suffixes:在重疊情況下,添加到列名后的字符串元組;默認(rèn)是(’_x’,’_y’)(例如如果待合并的DataFrame中都含有‘data’列,那么結(jié)果中會(huì)出現(xiàn)’data_x’,‘data_y’)。
copy:如果為False,則在某些特殊情況下避免將數(shù)據(jù)復(fù)制到結(jié)果數(shù)據(jù)中;默認(rèn)情況下總是復(fù)制。
indicator:添加一個(gè)特殊的列_merge,指示每一行的來(lái)源;值將根據(jù)每行中連接數(shù)據(jù)的來(lái)源分別為’left_only’,‘right_only’或’both’。
- 例子🌰
2、join方法
用于按照索引合并
- 這個(gè)函數(shù)比較簡(jiǎn)單,直接舉例🌰
3、 對(duì)于 NumPy數(shù)組的拼接或綁定, numpy.concatenate() 方法可以實(shí)現(xiàn)。
- 例子🌰
4、pandas.concat()
- 語(yǔ)法👇:
pandas.concat(objs,axis=0, join=‘outer’, ignore_index=False, keys=None, levels=None, names=None, verify_integrity=False, sort=False, copy=True)
objs: 參與連接的pandas對(duì)象的列表或字典。唯一必需的參數(shù)。
axis: 指明連接的軸向(0為"index",1為"columns"),默認(rèn)為0.
join: “inner"或"outer”,默認(rèn)為"outer"。指明其他軸向上的索引是按交集(inner)還是并集(outer)進(jìn)行合并。
keys: 與連接對(duì)象有關(guān)的值,用于形成連接軸向上的層次化索引。可以是任意值的列表或數(shù)組、元組數(shù)組、數(shù)組列表(如果將levels設(shè)置成多級(jí)數(shù)組的話)
levels: 指定用作層次化索引各級(jí)別上的索引 好累明天繼續(xù)寫吧
總結(jié)
以上是生活随笔為你收集整理的pandas中合并数据集的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: NumPy中的where()函数
- 下一篇: 引入Spacy模块出错—OSError: