merge()
import pandas as pd
pd.merge(dateframe1,dateframe2,on =
' ',how =
' ')
merge是pandas中用來合併資料的函式,不像concat是按照某行或某列來合併,而是按照資料中具體的某一字段來連線資料。
具體引數的意思,舉例說明,一看就懂!!
舉例說明
先列舉兩個dataframe
import pandas as pd
df_1 = pd.dataframe(
)df_1
姓名 年紀 城市
0 小明 10 上海
1 小紅 9 北京
2 小剛 12 深圳
df_2 = pd.dataframe(
)df_2
零花錢 城市
050 蘇州
1200 北京
2600 上海
3400 廣州
480 重慶
on表示按照那個特徵來找相同的字段:
# 兩個dataframe都有「城市」,並且「城市」裡面有相同的元素,可以按照這些相同的元素拼接
result = pd.merge(df_1,df_2, on =
'城市'
) result
姓名 年紀 城市 零花錢
0 小明 10 上海 600
1 小紅 9 北京 200
沒有on的話,就自動找相同的字段
# 沒有on的話,就自動找相同的字段
result = pd.merge(df_1,df_2)
result
姓名 年紀 城市 零花錢
0 小明 10 上海 600
1 小紅 9 北京 200
how是指兩個dateframe的拼接方式。
# 外接,相當於兩個dateframe求並集
result = pd.merge(df_1,df_2, on =
'城市'
, how =
'outer'
) result
姓名 年紀 城市 零花錢
0 小明 10.0 上海 600.0
1 小紅 9.0 北京 200.0
2 小剛 12.0 深圳 nan
3 nan nan 蘇州 50.0
4 nan nan 廣州 400.0
5 nan nan 重慶 80.0
# 右置,
result = pd.merge(df_1,df_2, on =
'城市'
, how =
'right'
) result
姓名 年紀 城市 零花錢
0 小明 10.0 上海 600
1 小紅 9.0 北京 200
2 nan nan 蘇州 50
3 nan nan 廣州 400
4 nan nan 重慶 80
# 左置
result = pd.merge(df_1,df_2, on =
'城市'
, how =
'left'
) result
姓名 年紀 城市 零花錢
0 小明 10 上海 600.0
1 小紅 9 北京 200.0
2 小剛 12 深圳 nan
# how = 'inner',只顯示具有相同欄位的樣本
result = pd.merge(df_1,df_2, on =
'城市'
, how =
'inner'
) result
姓名 年紀 城市 零花錢
0 小明 10 上海 600
1 小紅 9 北京 200
pandas中merge的用法
pandas中的merge和concat類似,但主要是用於 兩組有key column的資料 統一索引的資料.通常也被用在database的處理當中。import pandas as pd 定義資料集並列印出 left pd.dataframe right pd.dataframe print le...
Pandas 連線合併函式merge
一 merge函式用途 pandas中的merge 函式類似於sql中join的用法,可以將不同資料集依照某些字段 屬性 進行合併操作,得到乙個新的資料集。二 merge 函式的具體引數 引數 說明how 預設為inner,可設為inner outer left right on根據某個字段進行連線...
pandas 做合併操作 merge函式
pandas的merge方法提供了一種類似於sql的記憶體鏈結操作,官網文件提到它的效能會比其他開源語言的資料操作 例如r 要高效。merge的引數 on 列名,join用來對齊的那一列的名字,用到這個引數的時候一定要保證左表和右表用來對齊的那一列都有相同的列名。left on 左表對齊的列,可以是...