亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python選取特定列 pandas iloc,loc,icol的使用詳解(列切片及行切片)

 更新時(shí)間:2019年08月06日 10:41:27   作者:Lenskit  
今天小編就為大家分享一篇python選取特定列 pandas iloc,loc,icol的使用詳解(列切片及行切片),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

df是一個(gè)dataframe,列名為A B C D

具體值如下:

A B C D
0 ss 小紅 8
1 aa 小明 d
4 f f
6 ak 小紫 7

dataframe里的屬性是不定的,空值默認(rèn)為NA。

一、選取標(biāo)簽為A和C的列,并且選完類(lèi)型還是dataframe

df = df.loc[:, ['A', 'C']]
df = df.iloc[:, [0, 2]]

二、選取標(biāo)簽為C并且只取前兩行,選完類(lèi)型還是dataframe

df = df.loc[0:2, ['A', 'C']] 
df = df.iloc[0:2, [0, 2]] 

聰明的朋友已經(jīng)看出iloc和loc的不同了:loc是根據(jù)dataframe的具體標(biāo)簽選取列,而iloc是根據(jù)標(biāo)簽所在的位置,從0開(kāi)始計(jì)數(shù)。

","前面的":"表示選取整列,第二個(gè)示例中的的0:2表示選取第0行到第二行,這里的0:2相當(dāng)于[0,2)前閉后開(kāi),2是不在范圍之內(nèi)的。

需要注意的是,如果是df = df.loc[0:2, ['A', 'C']]或者df = df.loc[0:2, ['A', 'C']],切片之后類(lèi)型依舊是dataframe,不能直接進(jìn)行

加減乘除等操作的,比如dataframe的一列是數(shù)學(xué)成績(jī)(shuxue),另一列為語(yǔ)文成績(jī)(yuwen),現(xiàn)在需要求兩門(mén)課程的總和??梢允褂胐f['shuxue'] + df['yuwen'](選取完之后類(lèi)型為series)來(lái)獲得總分,而不能使用df.iloc[:,[2]]+df.iloc[:,[1]]或df.iloc[:,['shuxue']]+df.iloc[:,['yuwen']],這會(huì)產(chǎn)生錯(cuò)誤結(jié)果。

還有一種方式是使用df.icol(i)來(lái)選取列,選取完的也不是dataframe而是series,i為該列所在的位置,從0開(kāi)始計(jì)數(shù)。

如果你想要選取某一行的數(shù)據(jù),可以使用df.loc[[i]]或者df.iloc[[i]]。

以上這篇python選取特定列 pandas iloc,loc,icol的使用詳解(列切片及行切片)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論