這個函式橫向合併時,將表的所有資料通過索引相同合併,而merge函式可以選擇鍵值合併
引數功能:
aixs:設定合併方式,0為縱向;1為橫向
jion:設定是交集還是並集,』『inner』『是交集;』『outer』'是並集
import pandas as pd
import numpy as np
df1=pd.dataframe(
)df2=pd.dataframe(
)df3=pd.dataframe(
)print
('下面的是=橫向==交集==產生的結果************'
)merge=pd.concat(
[df1,df2]
,axis=
1,join=
'inner'
)print
(merge)
print
('\n下面的是=橫向==並集==產生的結果**************'
)merge1=pd.concat(
[df1,df2]
,axis=
1,join=
'outer'
)print
(merge1)
print
('\n下面的是=縱向====無索引產生的結果**************'
)merge2=pd.concat(
[df1,df2]
,axis=
0,ignore_index=
true
)print
(merge2)
print
('\n下面的是=縱向====有索引產生的結果**************'
)merge3=pd.concat(
[df1,df2]
,axis=
0,ignore_index=
false
)print
(merge3)
print
('\n下面的是=縱向====drop消去索引產生的結果並inplace作用到原數***********'
)merge3.reset_index(drop=
true
,inplace=
true
)print
(merge3)
'''下面的是=橫向==交集==產生的結果**
****
****
** 姓名 年齡 性別 姓名 年齡 性別
0 小紅 18 女 大紅 28 女
1 小風 15 男 大風 25 男
2 小黑 17 男 大黑 27 男
下面的是=橫向==並集==產生的結果**
****
****
****
姓名 年齡 性別 姓名 年齡 性別
0 小紅 18 女 大紅 28 女
1 小風 15 男 大風 25 男
2 小黑 17 男 大黑 27 男
3 nan nan nan 大嵐 25 女
下面的是=縱向==
==無索引產生的結果**
****
****
****
姓名 年齡 性別
0 小紅 18 女
1 小風 15 男
2 小黑 17 男
3 大紅 28 女
4 大風 25 男
5 大黑 27 男
6 大嵐 25 女
下面的是=縱向==
==有索引產生的結果**
****
****
****
姓名 年齡 性別
0 小紅 18 女
1 小風 15 男
2 小黑 17 男
0 大紅 28 女
1 大風 25 男
2 大黑 27 男
3 大嵐 25 女
下面的是=縱向==
==drop消去索引產生的結果並inplace作用到原數**
****
****
* 姓名 年齡 性別
0 小紅 18 女
1 小風 15 男
2 小黑 17 男
3 大紅 28 女
4 大風 25 男
5 大黑 27 男
6 大嵐 25 女
將資料表中的某一列作為鍵值,當鍵值相同時放在同一行,相當於將該行鍵值合併
pd.merge(left=, right= ,how= " 「,left_on =」 「, right_on=」 ",)
引數:**left:**放到左邊的資料表變數;right:放在右邊資料表變數
**how:**合併方式,left:左表全顯示,right右表全顯示;outer:兩個都顯示;inner:只顯示相等的
**left_on:**左邊要關聯的屬性;**right_on:**右邊要關聯的屬性,可以是列表表示多個相等的元素
import pandas as pd
import numpy as np
df1=pd.dataframe(
)df2=pd.dataframe(
)print
('\n按照==左邊==列表顯示-----'
)merg=pd.merge(left=df1,right=df2,how=
"left"
,\ left_on=
"姓名"
,right_on=
"姓名",)
print
(merg)
print
('\n按照==右邊===列表顯示-----'
)merg1=pd.merge(left=df1,right=df2,how=
"right"
,\ left_on=
"姓名"
,right_on=
"姓名",)
print
(merg1)
print
('\n按照===交===顯示-----'
)merg2=pd.merge(left=df1,right=df2,how=
"inner"
,\ left_on=
"姓名"
,right_on=
"姓名",)
print
(merg2)
print
('\n按照===並===顯示-----'
)merg3=pd.merge(left=df1,right=df2,how=
"outer"
,\ left_on=
"姓名"
,right_on=
"姓名",)
print
(merg3)
'''按照==左邊==列表顯示-----
姓名 年齡 性別 age gender
0 小紅 18 女 nan nan
1 小風 15 男 25 男
2 小黑 17 男 25 女
按照==右邊===列表顯示-----
姓名 年齡 性別 age gender
0 小風 15 男 25 男
1 小黑 17 男 25 女
2 大紅 nan nan 28 女
3 大黑 nan nan 27 男
按照===交===顯示-----
姓名 年齡 性別 age gender
0 小風 15 男 25 男
1 小黑 17 男 25 女
按照===並===顯示-----
姓名 年齡 性別 age gender
0 小紅 18 女 nan nan
1 小風 15 男 25 男
2 小黑 17 男 25 女
3 大紅 nan nan 28 女
4 大黑 nan nan 27 男
'''
14 Pandas實現資料的合併concat
使用場景 批量合併相同格式的excel 給dataframe新增行 給dataframe新增列 一句話說明concat語法 concat語法 pandas.concat objs,axis 0,join outer ignore index false import pandas as pd imp...
pandas處理資料方法整合
1.如何將乙個表中的role欄位取值 客戶 和 坐席 處理為0和1data role data role lambda x 1if x 客戶 else 0 data keywords data.lambda x get keyword x role x content axis 1 3.去除一段話中...
pandas 排序 Pandas 資料排序
python 的 pandas 庫中有一類對資料排序的方法,主要分為對引數列排序,對數值排序,及二者混合三種。一.引數列排序 首先我們生成乙個亂序數列 unsorted df 隨後我們可通過 df.sort index 函式對資料集進行排序操作 如不做規定,返回行引數正序排序 新增引數 ascend...