欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

pandas索引與賦值操作、排序以及Series排序和DataFrame排序方式

 更新時(shí)間:2023年09月13日 09:50:51   作者:learning-striving  
這篇文章主要介紹了pandas索引與賦值操作、排序以及Series排序和DataFrame排序方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

一、pandas索引操作

索引操作,使用索引選取序列和切片選擇數(shù)據(jù),也可以直接使用列名、行名稱,或組合使用

  • 直接使用行列索引:行列索引名順序?yàn)橄攘性傩?,使用指定行列索引名,不能使用下?biāo)
  • loc[行索引名,列索引名]:先行再列,只能使用指定的行列索引名,不能使用下標(biāo)
  • iloc[行,列]:先行再列,只能使用索引下標(biāo)獲取數(shù)據(jù),不能使用指定行列索引名
  • 下標(biāo)索引與指定行列索引相結(jié)合:使用index或columns.get_indexer,見案例

代碼如下

import pandas as pd
import numpy as np
# 數(shù)據(jù)生成代碼
num = np.random.randint(50, 100, (3, 5))
num
# 傳入標(biāo)簽索引
column = ['第一列', '第二列', '第三列', '第四列', '第五列']   # 列標(biāo)簽索引
# ind = ['第一行', '第二行', '第三行']    # 行標(biāo)簽索引
ind = ['第_' + str(i) + '_行' for i in range(num.shape[0])]   # 行標(biāo)簽索引,num.shape[0]即獲取num數(shù)組的行號,此處為3
data = pd.DataFrame(num, columns=column, index=ind)
data
-------------------------------------------------------------------
data['第五列']['第_2_行']    # 只能先列再行
data['第_2_行']['第五列']    # 先行再列,報(bào)錯(cuò)
data.loc['第_0_行':'第_2_行', '第三列']    # 先行再列,loc只能使用指定行列索引,切取第三列中[0,2]行中的數(shù)據(jù)
data.loc[:'第_2_行', '第三列':]   # loc只能使用指定行列索引,切取[0,2]行,3-最后一列的數(shù)據(jù)
data.iloc[:2, 2:]   # iloc只能使用下標(biāo)索引,切取[0,2)行,3-最后一列的數(shù)據(jù)

數(shù)據(jù)生成

 

操作如下 

下標(biāo)索引與指定行列索引相結(jié)合

data.loc[data.index[0:2], ['第二列', '第三列', '第五列']]   # 下標(biāo)索引與指定行列索引相結(jié)合
data.iloc[0:2, data.columns.get_indexer(['第二列', '第三列', '第五列'])]  # 下標(biāo)索引與指定行列索引相結(jié)合

二、pandas賦值操作

只能對某一列賦值,不能對一行賦值,有兩種方式,直接使用索引用點(diǎn).索引名,具體如下

代碼如下 

import pandas as pd
import numpy as np
# 數(shù)據(jù)生成代碼
num = np.random.randint(50, 100, (3, 5))
# 傳入標(biāo)簽索引
column = ['第一列', '第二列', '第三列', '第四列', '第五列']   # 列標(biāo)簽索引
# ind = ['第一行', '第二行', '第三行']    # 行標(biāo)簽索引
ind = ['第_' + str(i) + '_行' for i in range(num.shape[0])]   # 行標(biāo)簽索引,num.shape[0]即獲取num數(shù)組的行號,此處為3
data2 = pd.DataFrame(num, columns=column, index=ind)
data2
------------------------------------------------------------
data2['第四列'] = 88   # 值可為字符串或漢字
data2
data2.第一列 = 99  # 方式二
data2

生成數(shù)據(jù)

 

操作如下

三、pandas排序

pandas排序有兩種方式,一種是對索引進(jìn)行排序,另一種是對內(nèi)容進(jìn)行排序

3.1 DataFrame排序

  • df.sort_values(by=, ascending=):單個(gè)鍵(列名)或多個(gè)鍵進(jìn)行排序
  • by:指定排序參考的鍵
  • ascending:指定升序或降序
  • ascending=True:默認(rèn)升序
  • ascending=False:降序
  • df.sort_index():給索引進(jìn)行排序

代碼如下 

data2.sort_values(by='第三列')  # 默認(rèn)ascending=True,即升序排序
data2.sort_values(by='第三列', ascending=False)   # 根據(jù)第三列降序排序
data2.sort_values(by=['第一列', '第四列'], ascending=False)    # 根據(jù)多列降序排序
data2.sort_index()   # 給索引進(jìn)行排序

操作演示 

3.2 Series排序

  • series.sort_values(ascending=True):series排序時(shí),只有一列,不需要參數(shù)
  • series.sort_index(ascending=):根據(jù)索引排序,ascending指定升序或降序,默認(rèn)升序

代碼如下 

data2['第四列'].sort_values()    # 默認(rèn)ascending=True,即將第四列升序排序
data2['第四列'].sort_values(ascending=False)    # ascending=False,將第四列降序排序
data2['第四列'].sort_index(ascending=False)    # ascending=False,根據(jù)索引將第四列降序排序
data2['第四列'].sort_index()    # 默認(rèn)ascending=True,根據(jù)索引將第四列升序排序

操作演示 

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • opencv+圖像處理(Image Processing in OpenCV) 4-0改變顏色空間的過程

    opencv+圖像處理(Image Processing in OpenCV) 

    這篇文章主要介紹了opencv+圖像處理(Image Processing in OpenCV) 4-0改變顏色空間,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-04-04
  • Python實(shí)現(xiàn)ping指定IP的示例

    Python實(shí)現(xiàn)ping指定IP的示例

    今天小編就為大家分享一篇Python實(shí)現(xiàn)ping指定IP的示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • python實(shí)現(xiàn)遠(yuǎn)程控制電腦

    python實(shí)現(xiàn)遠(yuǎn)程控制電腦

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)遠(yuǎn)程控制電腦,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • 基于注解實(shí)現(xiàn) SpringBoot 接口防刷的方法

    基于注解實(shí)現(xiàn) SpringBoot 接口防刷的方法

    這篇文章主要介紹了基于注解實(shí)現(xiàn) SpringBoot 接口防刷的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • python高斯分布概率密度函數(shù)的使用詳解

    python高斯分布概率密度函數(shù)的使用詳解

    今天小編就為大家分享一篇python高斯分布概率密度函數(shù)的使用詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • Pytest使用fixture實(shí)現(xiàn)token共享的方法

    Pytest使用fixture實(shí)現(xiàn)token共享的方法

    同學(xué)們在做pytest接口自動(dòng)化時(shí),會遇到一個(gè)場景就是不同的測試用例需要有一個(gè)登錄的前置步驟,登錄完成后會獲取到token,用于之后的代碼中,本文給大家介紹Pytest使用fixture實(shí)現(xiàn)token共享的方法,感興趣的朋友一起看看吧
    2023-11-11
  • 使用Python設(shè)置tmpfs來加速項(xiàng)目的教程

    使用Python設(shè)置tmpfs來加速項(xiàng)目的教程

    這篇文章主要介紹了使用Python設(shè)置tmpfs來加速項(xiàng)目的教程,文中給出方法使用Python腳本將tmpfs保存于內(nèi)存中的程序存儲到本地硬盤上,需要的朋友可以參考下
    2015-04-04
  • Python網(wǎng)絡(luò)爬蟲出現(xiàn)亂碼問題的解決方法

    Python網(wǎng)絡(luò)爬蟲出現(xiàn)亂碼問題的解決方法

    這篇文章主要為大家詳細(xì)介紹了Python網(wǎng)絡(luò)爬蟲出現(xiàn)亂碼問題的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • Python pip使用超時(shí)問題解決方案

    Python pip使用超時(shí)問題解決方案

    這篇文章主要介紹了Python pip使用超時(shí)問題解決方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • python基礎(chǔ)之引用和匿名函數(shù)

    python基礎(chǔ)之引用和匿名函數(shù)

    這篇文章主要介紹了python引用和匿名函數(shù),實(shí)例分析了Python中返回一個(gè)返回值與多個(gè)返回值的方法,需要的朋友可以參考下
    2021-10-10

最新評論