最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Pandas中df.loc[]與df.iloc[]的用法與異同?

 更新時間:2022年07月25日 09:32:19   作者:三頭六臂的小白  
本文主要介紹了Pandas中df.loc[]與df.iloc[]的用法與異同,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧?

官網(wǎng)資料:

loc  :https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.loc.html
iloc  : https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.iloc.html

用 途:

  • 取數(shù): 從dataframe中取 一部分行與列的數(shù)據(jù) (為主)
  • 賦值: 給指定的 行與列賦值 df.loc[xx,xx] = xx

輸入?yún)?shù)注意:

方括號內(nèi)的參數(shù):

  • loc、iloc 方括號中,參數(shù)的排布模式為[行條件,列條件],當(dāng)總體條件只有一個時候(最外層方括號內(nèi)無逗號),會按照:先行后列的方法來匹配對應(yīng)的條件
  • 默認(rèn)會拋棄掉對應(yīng)的dataframe格式,輸出series,如果想保留dataframe格式,需要在條件外邊加 ”[ ]”。

loc與iloc條件(行/列)相同之處:

  • 單一元素(不包含list) str/int/slice 選取行時候,選取的是對應(yīng)條件下的行 (series)
  • 單一元素(不包含list) str/int/slice 選取列時候,選取的是對應(yīng)條件下的列(series)
  • 條件為list時候,選取的是一組對應(yīng)的 行(列) 條件下的(dataframe數(shù)據(jù))
  • 布爾值的list/可與df對齊的series(布爾類型): 與index長度相同的話 選擇對應(yīng)值為True的行,與列數(shù)相同的話,選取對應(yīng)值為True 的列。
  • df的index的子集index2: 選取df中對應(yīng)的index2的行
  • 函數(shù):輸入為行/列series(外層有逗號)或者dataframe(外層無括號) 返回為對應(yīng)輸入的一個布爾值表,用來篩選對應(yīng)的數(shù)據(jù)。

不同之處:

  • 當(dāng)對應(yīng)的行/列標(biāo)簽為 int類型x時候,iloc表示對應(yīng)的第x個 index或column,而loc 表示對應(yīng)的index /column名稱等于這個x。
  • 對應(yīng)的開閉區(qū)間不同  df.loc[1:5,1:5] 會有一個最多 5x5的df數(shù)據(jù)子集,而df.iloc[1:5,1:5] 會有最多4x4df數(shù)據(jù)子集,其中iloc的行/列切片不包含最后一個數(shù)(與range函數(shù)類似)

loc與iloc 實際用例:

df = pd.DataFrame([[1, 2,3,14], [4, 5,6,17], [7, 8,9,10],[11,12,13,14]],
? ? ?index=[2,3,4,5],
? ? ?columns=[2,4,5,6])
??
# loc 行/列條件是對應(yīng)的標(biāo)簽值在對應(yīng)的范圍內(nèi),[閉合,閉合] 區(qū)間
df.loc[2:5,2:5]
# ? 輸出為:
# ? ?2?? ?4?? ?5
#2?? ?1?? ?2?? ?3
#3?? ?4?? ?5?? ?6
#4?? ?7?? ?8?? ?9
#5?? ?11?? ?12?? ?13
?
# 選取index 為 2 的行里面的值
# 不推薦:df.loc[2] 下文省略
df.loc[2,:]
# 輸出為 ?1,2,3,14 series類型
?
# 選取index 為 2 的行 保留dataframe類型
df.loc[[2],:]?
?
#選取對應(yīng)列名為 2 的列
df.loc[:,2]?
# 這里 index 與 列名都是int類型,因此loc方括號中使用int類型,如果是其他類型,對應(yīng)的數(shù)字要改成其他類型的數(shù)據(jù),不能再用數(shù)字
?
# iloc 行/列條件是對應(yīng)的標(biāo)簽或者列名的索引值在范圍內(nèi),[閉合,開放) 區(qū)間
df.iloc[2:5,2:5]
# 輸出為?
# ? ?5?? ? 6
#4?? ? 9?? ? 10
#5?? ? 13?? ? 14
?
# 這里 索引是以0開始的,所有行的切片應(yīng)該寫作 0:5 ?也可以寫作“ :”
# iloc 數(shù)字類型來做篩選的
?
# 不管是loc 還是 iloc 都建議用[行條件,列條件] 來寫,其中如果無需篩選可以用:來占位,表意明確。
# loc 匹配的是 index/列名的值 與對應(yīng)的條件
# iloc 匹配的是 index/列名對應(yīng)的索引號 與對應(yīng)的條件

 到此這篇關(guān)于Pandas中df.loc[]與df.iloc[]的用法與異同 的文章就介紹到這了,更多相關(guān)Pandas df.loc[]與df.iloc[]內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

城口县| 江达县| 兴业县| 大渡口区| 广宁县| 平遥县| 尉氏县| 汤阴县| 富源县| 绍兴市| 高雄县| 香格里拉县| 响水县| 岚皋县| 抚顺市| 黄平县| 汕头市| 房产| 林州市| 扬中市| 汕尾市| 轮台县| 五峰| 仁怀市| 义乌市| 姜堰市| 牙克石市| 磐石市| 海淀区| 长宁县| 新乡县| 桓仁| 图木舒克市| 巴中市| 甘孜| 济阳县| 崇文区| 连南| 鄂托克旗| 双峰县| 南郑县|