您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“python中數據索引怎么用”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“python中數據索引怎么用”這篇文章吧。
前言
數據索引是數據分析中最關鍵的操作。在數據分析中經常需要選取固定的行列,在Excel中可以使用鼠標進行點選,但是敲命令的時候,例如python和R中不方便使用鼠標,這就需要靈活掌握數據的索引。如果數據索引不能熟練操作,就看不懂代碼,后面的數據分析無法完成。
數據索引
數據索引,也稱為數據切片和切塊,是使用不同的列或索引切分數據,實現從數據中獲取特定子集的方式。DataFrame為二維數據,每一列均為一個同一類型數據,所以為Series,每一行可以為不同數據類型,所以,每一行數據為DataFrame一個子集,數據類型依然為DataFrame。
pandas索引常用五種方法,loc iloc ix at iat。ix官方已不再推薦使用。其實筆者覺得pandas的索引操作不如R的方便。不過也夠用。目前主要使用的為loc和iloc,兩者比較容易混淆,這里按照官方方法提供一個簡單的快速記憶方法loc代表location,使用標簽來索引,也就是行名或者列名,而iloc中的i解讀為integer,即integerlocation通過數字索引值來定位,也就是行號或者列號。
x.loc[ [‘行名1’, ‘行名2’, ‘行名3’……] , [‘列名1’,‘列名2’……] ] x.iloc[ [行號1,行號2,行號3……] , [列號1,列號2……] ]
利用數字進行索引
pandas可以使用行名列名進行索引,也可以使用數字作為索引,具體使用哪種方式,要看具體使用場景,靈活使用,如果行列數太多,使用行名列名更加方便,如果要選取一個范圍,使用數字更加方便。
如果要使用數字進行索引,則需要使用iloc標簽,行在前列在后,中間用逗號“,”分割,如果全部選取,用冒號“:”代替。其中冒號也可以用來表示一定范圍。
特別注意, python中索引值從0開始。并且不包含右側邊界。例如0:15,代表從第一個值到第15個值。
使用數字索引
mtcars[0:5] mtcars.iloc[ 0:5 ,: ] mtcars.iloc[1] #負數索引 mtcars.iloc[:,-1]
選取奇數行和偶數行
#奇數行 mtcars.iloc[np.arange(0,32,2)] #偶數行 mtcars.iloc[np.arange(1,32,2)]
利用行名列名進行索引
如果想選取固定的行,使用點號,是最方便的方式,類似于R中數據框索引使用“$”,為什么行不行呢?因為數據分析中更多時候是按列處理數據。這里注意由于python中點號有特殊作用,所以,源文件列名中最好不要有點號和空白,可以使用下劃線替代
mtcars.cyl mtcars.cyl.size
直接使用行名列名選取數據
mtcars['mpg'] mtcars[['mpg','cyl']] mtcars.loc[:,['cyl']] mtcars.loc[['Fiat 128','Valiant']] mtcars.loc[:,['disp','hp']]
刪除固定行或列
#刪除行列 mtcars.drop(columns=['cyl','mpg']) mtcars.drop(index=['Valiant']) mtcars[mtcars.index != 5] mtcars[mtcars.index!='Volvo 142E']
以上是“python中數據索引怎么用”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。