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

python數(shù)據(jù)分析基礎(chǔ)之pandas中l(wèi)oc()與iloc()的介紹與區(qū)別介紹

 更新時(shí)間:2024年07月26日 10:09:40   作者:sodaloveer  
我們經(jīng)常在尋找數(shù)據(jù)的某行或者某列的時(shí)常用到Pandas中的兩種方法iloc和loc,兩種方法都接收兩個(gè)參數(shù),第一個(gè)參數(shù)是行的范圍,第二個(gè)參數(shù)是列的范圍,這篇文章主要介紹了python數(shù)據(jù)分析基礎(chǔ)之pandas中l(wèi)oc()與iloc()的介紹與區(qū)別,需要的朋友可以參考下

前言

我們經(jīng)常在尋找數(shù)據(jù)的某行或者某列的時(shí)常用到Pandas中的兩種方法iloc和loc,兩種方法都接收兩個(gè)參數(shù),第一個(gè)參數(shù)是行的范圍,第二個(gè)參數(shù)是列的范圍。

一、loc[]函數(shù)

loc:

  • 接收的是行、列的名稱或標(biāo)簽。
  • 在切片是按閉區(qū)間切片,也就是區(qū)間兩邊都能取到。

二、iloc[]函數(shù)

iloc:

  • 接收的是行、列的索引位置(下標(biāo),從0開始)。
  • 按傳統(tǒng)的左閉右開的的方式切片。

三、詳細(xì)用法

創(chuàng)建用于測試的數(shù)據(jù)表dataframe:

import pandas as pd
data={'state':['Ohio','Ohio','Ohio','Nevada','Nevada'],
      'year':[2000,2001,2002,2001,2002],
      'pop':[1.5,1.7,3.6,2.4,2.9]}
frame=pd.DataFrame(data)
frame.index=list('abcde') 
frame

loc方法

1、單個(gè)行名/列名 或 行名/列名的列表

要求:讀取第2行,行名為’b’。

frame.loc['b']

注意: 上面這種寫法,運(yùn)行"print(type(frame.loc[‘b’]))"可以知道返回的是<class ‘pandas.core.series.Series’>對象,如果要<class ‘pandas.core.frame.DataFrame’>對象可以改成frame.loc[[‘b’]]。

frame.loc[['b']]

要求:取第1、2列的第2與第5行,第1、2列的列名分別為’state’與’year’,第2、5行的行名分別為’b’和’e’。

frame.loc[['b','e'],['state','year']]

2、列名/行名的切片

要求:讀取第2列,列名為’year’。

frame.loc[:,'year']  #返回的是<class 'pandas.core.series.Series'>對象。

frame.loc[:,['year']] #返回的是<class 'pandas.core.frame.DataFrame'>對象。

要求:取第2行第3列,第2行行名為’b’,第3列列名為’pop’。

frame.loc['b','pop']

要求:讀取dataframe某個(gè)區(qū)域,比如第3列的第2到第5行,第3列為"pop"列,第2到第5行即b行到e行。

frame.loc['b':'e','pop'] #返回的是<class 'pandas.core.series.Series'>對象。

frame.loc['b':'e',['pop']] #返回的是<class 'pandas.core.frame.DataFrame'>對象。

要求:取第1、2列的第2到第5行,第1、2列的列名分別為’state’和’yea‘列,第2、5行的行名為’b’和‘e’行。

frame.loc['b':'e','state':'year'] #返回的是<class 'pandas.core.frame.DataFrame'>對象。

3、返回布爾型列表的表達(dá)式(判斷或函數(shù))

要求:根據(jù)判斷條件讀取,取第3列大于2的。

frame.loc[frame['pop']>2,'pop'] #返回的是<class 'pandas.core.series.Series'>對象。

frame.loc[frame['pop']>2,['pop']] #返回的是<class 'pandas.core.frame.DataFrame'>對象。

要求:根據(jù)函數(shù)讀取,取第3列大于2的所有行與列。

frame.loc[lambda x: x['pop']>2]

iloc方法

 1、單個(gè)下標(biāo) 或 若干下標(biāo)構(gòu)成的列表,從0開始。

要求:取第2行的值。

frame.iloc[1] 

注意: 上面這種寫法,運(yùn)行"print(type(frame.iloc[1]]))"可以知道返回的是<class ‘pandas.core.series.Series’>對象,如果要<class ‘pandas.core.frame.DataFrame’>對象可以改成frame.iloc[[1]]。

frame.iloc[[1]]

要求:取第1、2列的第2與第5行。

frame.iloc[[1,4],[0,1]]

2、下標(biāo)的切片

要求:取第2列的值。

frame.iloc[:,1] #返回的是<class 'pandas.core.series.Series'>對象。

frame.iloc[:,[1]]  #返回的是<class 'pandas.core.frame.DataFrame'>對象。

要求:取第2行第3列

frame.iloc[1,2]

要求:讀取dataframe某個(gè)區(qū)域,比如第3列的第2到第5行。

frame.iloc[1:5,2]  #返回的是<class 'pandas.core.series.Series'>對象。

frame.iloc[1:5,[2]] #返回的是<class 'pandas.core.frame.DataFrame'>對象。

要求:取第1、2列的第2到第5行。

frame.iloc[1:5,0:2] #因?yàn)槭?iloc[]中用:表示從第幾行/列到第幾行/列是左閉右開的的方式,因此這里下標(biāo)3表示第四行與第四列是取不到的。
frame.iloc[[1,2,3,4],[0,1]] #第二種寫法

3、可以返回合理值的函數(shù)

要求:當(dāng)DataFrame的index是整數(shù),取index為偶數(shù)的記錄。

import pandas as pd
data={'state':['Ohio','Ohio','Ohio','Nevada','Nevada'],
      'year':[2000,2001,2002,2001,2002],
      'pop':[1.5,1.7,3.6,2.4,2.9]}
frame=pd.DataFrame(data)
frame
frame.iloc[lambda x: x.index % 2 == 0]

總結(jié)

共同點(diǎn)

  • 兩者都接收兩個(gè)參數(shù),第一個(gè)參數(shù)是行的范圍,第二個(gè)參數(shù)是列的范圍。
  • 兩者都可以有行索引值沒有列索引值,但有列索引值前必須得有行索引值,但loc[]行索引值只能為名稱形式來取,不能按下標(biāo)形式來取。iloc[]則相反。

取第三列,無論使用loc[]函數(shù)還是iloc[]函數(shù),如果沒有行索引都會(huì)報(bào)錯(cuò)。

frame.loc['pop']
frame.loc[,'pop']
frame.iloc[,3]

不同點(diǎn)

1、loc[]函數(shù)接收的是行/列的名稱(可以是整數(shù)或者字符),iloc[]函數(shù)接收的是行/列的下標(biāo)(從0開始),不能是字符。

2、loc[]函數(shù)在切片時(shí)是按閉區(qū)間切片的,也就是區(qū)間兩邊都能取到,iloc[]函數(shù)則是按傳統(tǒng)的左閉右開的方式切片的。

參考文章:
https://blog.csdn.net/weixin_43298886/article/details/112632237
https://blog.csdn.net/Leon_Kbl/article/details/97492966

到此這篇關(guān)于python數(shù)據(jù)分析基礎(chǔ)之pandas中l(wèi)oc()與iloc()的介紹與區(qū)別的文章就介紹到這了,更多相關(guān)python pandas中l(wèi)oc()與iloc()內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python中find函數(shù)的詳細(xì)使用方法

    Python中find函數(shù)的詳細(xì)使用方法

    在Python中find()函數(shù)用于檢測字符串中是否包含子字符串sub,如果指定start(開始)和end(結(jié)束)范圍,則檢查是否包含在指定范圍內(nèi),這篇文章主要給大家介紹了關(guān)于Python中find函數(shù)的詳細(xì)使用方法,需要的朋友可以參考下
    2023-05-05
  • 在python中使用requests 模擬瀏覽器發(fā)送請求數(shù)據(jù)的方法

    在python中使用requests 模擬瀏覽器發(fā)送請求數(shù)據(jù)的方法

    今天小編就為大家分享一篇在python中使用requests 模擬瀏覽器發(fā)送請求數(shù)據(jù)的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • python爬蟲通過增加多線程獲取數(shù)據(jù)

    python爬蟲通過增加多線程獲取數(shù)據(jù)

    這篇文章主要為大家介紹了python爬蟲通過增加多線程獲取數(shù)據(jù)實(shí)現(xiàn)過程解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-06-06
  • pandas中iloc函數(shù)的具體實(shí)現(xiàn)

    pandas中iloc函數(shù)的具體實(shí)現(xiàn)

    iloc是Pandas中用于基于整數(shù)位置進(jìn)行索引和切片的方法,本文主要介紹了pandas中iloc函數(shù)的具體實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-06-06
  • python?教程實(shí)現(xiàn)?turtle海龜繪圖

    python?教程實(shí)現(xiàn)?turtle海龜繪圖

    這篇文章主要介紹了python?教程實(shí)現(xiàn)?turtle繪制海龜繪圖,文章基于python的相關(guān)資料展開turtle繪制海龜繪圖的詳細(xì)內(nèi)容,需要的小伙伴可以參考一下
    2022-05-05
  • python return實(shí)現(xiàn)匯率轉(zhuǎn)換器教程示例

    python return實(shí)現(xiàn)匯率轉(zhuǎn)換器教程示例

    這篇文章主要為大家介紹了python return實(shí)現(xiàn)匯率轉(zhuǎn)換器教程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • 使用numpy nonzero 找出非0元素

    使用numpy nonzero 找出非0元素

    這篇文章主要介紹了使用numpy nonzero 找出非0元素的方法,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • 深度學(xué)習(xí)入門之Pytorch 數(shù)據(jù)增強(qiáng)的實(shí)現(xiàn)

    深度學(xué)習(xí)入門之Pytorch 數(shù)據(jù)增強(qiáng)的實(shí)現(xiàn)

    這篇文章主要介紹了深度學(xué)習(xí)入門之Pytorch 數(shù)據(jù)增強(qiáng)的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • Python中關(guān)于logging模塊的學(xué)習(xí)筆記

    Python中關(guān)于logging模塊的學(xué)習(xí)筆記

    在本篇文章里小編給大家整理的是一篇關(guān)于Python中l(wèi)ogging模塊相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友們可以參考下。
    2020-06-06
  • 基于python爬蟲數(shù)據(jù)處理(詳解)

    基于python爬蟲數(shù)據(jù)處理(詳解)

    下面小編就為大家?guī)硪黄趐ython爬蟲數(shù)據(jù)處理(詳解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-06-06

最新評論