摘要:第章合并連接數據集包含三個函數省略,在頁。沒有對默認合并兩個表的所有列,如果有列,有列,則結果為列多對保留多條記錄多對多會交叉每一條記錄通過參數設定連接方式兩個表都有兩個字段,則通過連接兩個表。
第3章 7-8:合并、連接數據集
包含三個函數:
numpy:concatenate 省略,在126頁。
pandas:concat/ append(略過) /merge
主要是講merge函數的參數:pd.merge(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) pd.merge 官方文檔
concat:如果a,b是兩個字段名稱相同的dataframe,就像原來的一部、二部各有存放業績的兩個表,在sql中可以用join連接,而pandas中用concat連接(注意有中括號)
pd.concat([yibu,erbu]) #yibu,erbu是兩個dataframe
如果兩個表的字段名不完全相同,會自動填充沒有的字段,如下:
如果只想保留都有的字段,則在參數中指定為inner
如果想保留df5的字段名(即不要df6中的D列,可以在join_axes中設定
pd.concat([df5,df6], join_axes = [df5.columns])
分為1對1,1對多,多對多。
(merge沒有[ ])
pd.merge(df1,df2) #默認合并兩個表的所有列,如果df1有a,b列,df2有b,c列,則結果為a,b,c列-- 多對1:保留多條記錄 -- 多對多:會交叉每一條記錄
通過參數 on 設定連接方式:
df1: employee, group
df2: employee, hire_data
兩個表都有employee兩個字段,則通過employee連接兩個表。
pd.merge(df1,df2,on = "employee")
df3: name, salary
df1與 df3沒有相同的字段,但是df3中的name和df1中的employee字段內容相同,都是姓名,所有可以通過left_on,right_on設定左右兩個表的關聯字段,實現連接。
pd.merge(df1,df3, left_on = "employee", right_on = "name") # name和employee的字段內容相同,可刪除name保留一列: pd.merge(df1,df3, left_on = "employee", right_on = "name").drop("name",axis =1)通過索引連接,這部分略講:
假如df1,df2中的index均為employee列,則連接方法如下:
pd.merge(df1,df2, left_index = True, right_index=True) # 也可以用join連接 df1.join(df2)
如果df1的empolyee為索引,df2沒有設置索引,則連接的代碼為: 134頁
pd.merge(df1, df2, left_index =True, right_on="name")
-- 參數 how:連接方式
這里主要是用merge里面的參數how,how參數有4種方式:
inner:內連接,保留兩個表相同的行
outer:外連接,保留兩個表所有的行
left:左連接,以左表為準,保留左表所有的行,右表匹配左表的結果
right:右連接,以右表為準,*
pd.merge(df6,df7, how = "inner")
-- 參數 suffixes:自定義后綴名
如果兩個表的字段名相同,但對于的值不同,想保留兩個表不同的值,可以設定參數suffixes
pd.merge(df8,df9, on = "name", suffixes = ["_L","_R"])
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/44975.html
今天開始學習《數據科學手冊》,主要學習3-5章,其他的選修。 -- 先連接數據庫加載數據: 用sqlalchemy 的create_engine連接: 注意:代碼里mysql+pymysql: 這部分不能加空格,否則會報錯 import pymysql import pandas as pd from sqlalchemy import create_engine sql = select...
摘要:數據規整化清理轉換合并重塑數據聚合與分組運算數據規整化清理轉換合并重塑合并數據集可根據一個或多個鍵將不同中的行鏈接起來。函數根據樣本分位數對數據進行面元劃分。字典或,給出待分組軸上的值與分組名之間的對應關系。 本篇內容為整理《利用Python進行數據分析》,博主使用代碼為 Python3,部分內容和書本有出入。 在前幾篇中我們介紹了 NumPy、pandas、matplotlib 三個...
摘要:主成分分析就是降維,通過線性組合,把多個原始變量合并成若干個主成分,這樣每個主成分都變成原始變量的線性組合。相關系數系數為為為。從結果看,這個數據可能不太適合用來分析,因為降到維后的代筆性不足。 這兩天用學了主成分分析,用的是PCA。主成分分析就是降維,通過線性組合,把多個原始變量合并成若干個主成分,這樣每個主成分都變成原始變量的線性組合。所以你想看具體哪個特征對結果的影響大,通過PC...
摘要:貢獻者飛龍版本最近總是有人問我,把這些資料看完一遍要用多長時間,如果你一本書一本書看的話,的確要用很長時間。為了方便大家,我就把每本書的章節拆開,再按照知識點合并,手動整理了這個知識樹。 Special Sponsors showImg(https://segmentfault.com/img/remote/1460000018907426?w=1760&h=200); 貢獻者:飛龍版...
摘要:官方文檔連接像其他函數一樣,官方文檔中的參數有很多,具體如下寫在前面,如果要對透視表中的字段進行計數,有時候用會報錯,可以用實例運用簡單版透視表上面以部門為索引,下面有二級索引,部門小組。 本節學習數據透視表 引用激勵數據,連接數據庫jili表,jili這幾個太難打了,下文用df代表激勵數據(代碼省略)之前在excel中用爛了的透視表,終于用python來實現了,其實主要是講pivot...
閱讀 1750·2021-09-28 09:43
閱讀 1111·2021-09-23 11:22
閱讀 2707·2021-09-14 18:05
閱讀 1823·2019-08-30 15:52
閱讀 2812·2019-08-30 10:55
閱讀 2007·2019-08-29 16:58
閱讀 1323·2019-08-29 16:37
閱讀 3031·2019-08-29 16:25