日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

dataframe 如何选中某列的一行_带你领略pandas中多表之间如何处理

發布時間:2025/3/15 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 dataframe 如何选中某列的一行_带你领略pandas中多表之间如何处理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

但我們在處理Pandas多表數據時,我們需要將多個表之間進行表格的連接與合并,當連接完多表之后我們可能還需要對數據進行多重的索引,方便我們更快的找到數據,以及對數據進行做透視表,更加直觀的去觀察我們的數據,今天我們就圍繞著數據合并以及數據重塑及透視表進行展開講解,讓我們去了解在Pandas中如何去這么操作數據。

一、數據合并

1、連接表,

在我們獲得數據的時候可能數據并不完整,而我們需要將這些不完整的數據合并到一起組成一個完整的數據,下面我們對數據進行合并的操作。

  • 創建3個DataFrame表格

查看一下三個表的數據

  • 將表格通過concat()方法進行合并
  • Concat參數如下

    Objs(必須參數)

    參與連接的pandas對象的列表或字典

    Axis

    指名連接的軸向,默認為0

    Join

    選中inner或outer(默認),其他軸向上索引是按交集(inner)還是并集(outer)進行合并

    Join_axes

    指名用于其他N-1條軸的索引,不執行并集/交集運算

    Keys

    與連接對象有關的值,用于形成連接軸向上的層次化索引??梢允侨我庵档牧斜?、數組、元組數組和數組列表(如果需要將levels設置成多級數組的話)

    Levels

    指定用作層次化索引各級別的索引,如果設置了keys的話

    Names

    用于創建分層級別的名稱,如果設置了keys或levels的話

    Verify_integrity

    檢查結果對象新軸上的重復情況,如果發則引發異常。默認為(false)允許重復

    Ignore_index

    不保留連接軸上的索引,產生一組新索引range

    • 通過keys參數設置連接df1、df2、df3的值為x、y、z
    • 新增加一個df4表,橫向連接到df1表的第2、3、6、7列
    • 將df1和df4橫向進行交集合并

    可以看出,合并后的數據為df1和df4都有的索引行進行合并的

    • 按照df1的索引進行df1表和df4表的橫向索引
    • 結果可以看出合并是按照df1表的索引進行合并的。通過append()方法連接表格連接df1和df2
    • 連接df1和df4表

    可以看出在合并的數據中原表中沒有的索引和列值都填充為了NaN缺失值。

    • 連接df1、df2、df3表
    • 忽略連接軸上的上的索引
    • 新增加一個s1表,并且跟df1進行橫向合并
    • 新增加一個s2表,并且跟df1進行多次連接

    結果可以看出,s2表中的數據并未確定列名,那么系統就自動的從0開始進行列名的名稱。

    • 表格合并后不保留原有的索引列名

    表格合并后將原有的列名全部替換為一個range()序列

    1.3、附加行

    結尾可以看出,合并后將s2中的數據作為附加行跟在了df1表的后面

    2、數據庫風格的DataFrame連接/合并

    2.1、單個鍵進行連接

    • 創建兩個表格并查看
    • 將key作為兩個表連接的中介

    2.2、多個鍵進行連接

    • 創建兩個表格,然后將表格以Key1和key2作為中介進行連接

    可以看出左右表以共同存在的key1、key2的行作為取出元素的依據,只取出了前三行,left表中的第四行為k2、k1,right表中的第四行為k2、k0,并不匹配所以沒有進行取值。

    • 以左表為主導進行連接,連接以key1,key2作為連接中介進行取值

    可以看出這次連接是以left表匯總的key1 、key2作為主鍵進行連接,right表中的不存在的主鍵元素則以NaN代替。

    • 以右表的key1、key2位主鍵進行連接
    • 以兩個表所有的key1、key2的元素都取出來
    • 當兩個表列名相同時進行合并

    列名相同時則會重新命名列名

    2.3、合并指示符

    • 以并集進行合并

    也可以使用字符串作為參數替代True,字符串會作為該列的列名稱。

    2.4、通過索引進行連接

    • 通過左表索引連接右表
    • 左表連接右表,求并集的形式
    • 左表連右表,求交集的形式

    2.5、通過索引和某列連接

    通過結果可以看出,right表中的數據重復了一遍。

    2.6、重疊列名稱的合并

    2.7、數據框拼接

    如果都存在的值以傳入的數據為準

    二、數據重塑及透視表

    1、多重索引

    • 創建表格并查看
    • 查看animal和hair_length下的所有數據

    或者以一級標題或二級標題進行查看

    • 創建表格并查看

    使用level參數進行調用

    • 查看exp下面的屬性值
    • 查看anmal下面的屬性值
    • 調用數據
    • 調用first數據
    • 調用second數據

    2、透視表

    • 創建一個透視表
    • 查看D列,索引為A,B,列為C的所有數據
    • 查看D列,索引為B,列為A,C的所有數據求和
    • 查看DE列,索引為B,列為A,C的求和數據
    • 查看索引為A,B,列為C的數據

    總結

    以上是生活随笔為你收集整理的dataframe 如何选中某列的一行_带你领略pandas中多表之间如何处理的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。