使用pandas進行資料分析的時候,我們經常需要對DataFrame的行或者列進行索引,使用pandas進行索引的方法主要有三種:直接使用行或者列標簽、loc函式和iloc函式,
舉個簡單的例子:
import numpy as np
import pandas as pd
df = pd.DataFrame({"Fruits":["apple","pear","banana","watermelon"],"Price":[1.2,1.4,2.3,4.2],"Sales":[11,45,25,16]})
df
生成的DataFrame如下所示:
| Fruits | Price | Sales | |
| 0 | apple | 1.2 | 11 |
| 1 | pear | 1.4 | 45 |
| 2 | banana | 2.3 | 25 |
| 3 | watermelon | 4.2 | 16 |
1、直接使用行或者列標簽
假如我們要選取df的Fruits和Price兩列,則
df[['Fruits','Price']]
| Fruits | Price | |
| 0 | apple | 1.2 |
| 1 | pear | 1.4 |
| 2 | banana | 2.3 |
| 3 | watermelon | 4.2 |
假如我們要選取df的第2、3行,則
df[2:4]
| Fruits | Price | Sales | |
| 2 | banana | 2.3 | 25 |
| 3 | watermelon | 4.2 | 16 |
2、loc函式
loc函式是基于行標簽和列標簽進行索引的,其基本用法為:
DataFrame.loc[行標簽,列標簽]
假如我們要選取df的第2、3行和Price、Sales對應的列,則
df[2:3,'Price':'Sales']
| Price | Sales | |
| 2 | 2.3 | 25 |
| 3 | 4.2 | 16 |
假如我們要選取所有的行和Fruits、Sales對應的列,則
df.loc[:,['Fruits','Sales']]
| Fruits | Sales | |
| 0 | apple | 11 |
| 1 | pear | 45 |
| 2 | banana | 25 |
| 3 | watermelon | 16 |
3、iloc函式
iloc函式是基于行和列的位置進行索引的,索引值從0開始,并且得到的結果不包括最后一個位置的值,其基本用法為:
DataFrame.iloc[行位置,列位置]
假如我們要選取df的第2、3行和第1、2列,則
df.iloc[2:4,1:3]
| Price | Sales | |
| 2 | 2.3 | 25 |
| 3 | 4.2 | 16 |
假如我們要選取所有的行和第0、2列,則
df.iloc[:,[0,2]]
| Fruits | Sales | |
| 0 | apple | 11 |
| 1 | pear | 45 |
| 2 | banana | 25 |
| 3 | watermelon | 16 |
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/303244.html
標籤:AI
上一篇:Vue3 制作發送驗證碼倒計時
下一篇:影像去模糊演算法代碼實踐!
