当我们针对一个DataFrame数据表需要提取行数时,就需要使用Pandas中的.iloc[]
方法。.iloc[]
方法的用法如下:
dataframe.iloc[row_index, column_index]
其中,row_index
表示要提取的行数的序号,column_index
则表示要提取的列数的序号。Pandas可以支持多种方式来表示row_index
和column_index
。例如,我们可以使用一个整数来表示单个行或列,也可以使用一个整数范围(切片)来表示连续的行或列。
下面我们来看两个具体的例子。
例一:
我们有如下一个DataFrame数据表:
import pandas as pd
data = pd.DataFrame({'name': ['Alice', 'Bob', 'Charlie', 'David', 'Ella'],
'age': [18, 23, 26, 31, 22],
'score': [80, 85, 77, 92, 88]})
print(data)
输出:
name age score
0 Alice 18 80
1 Bob 23 85
2 Charlie 26 77
3 David 31 92
4 Ella 22 88
我们想提取第2行的数据,可以使用.iloc[]
方法:
row_index = 1 # 第2行的序号为1
print(data.iloc[row_index])
输出:
name Bob
age 23
score 85
Name: 1, dtype: object
例二:
我们有如下一个DataFrame数据表:
import pandas as pd
data = pd.DataFrame({'name': ['Alice', 'Bob', 'Charlie', 'David', 'Ella'],
'age': [18, 23, 26, 31, 22],
'score': [80, 85, 77, 92, 88]})
print(data)
输出:
name age score
0 Alice 18 80
1 Bob 23 85
2 Charlie 26 77
3 David 31 92
4 Ella 22 88
我们想提取第2到第4行的数据:
start_index = 1 # 起始行的序号为1
end_index = 3 # 结束行的序号为3
print(data.iloc[start_index:end_index+1])
输出:
name age score
1 Bob 23 85
2 Charlie 26 77
3 David 31 92
其中,因为Python的切片并不包括结束位置,所以在此需要将结束位置的序号3
加1,才能正确的提取第2到第4行的数据。
综上所述,我们可以看出,在使用.iloc[]
方法时,我们需要注意如下几个要点:
row_index
和column_index
可以使用整数、整数范围(切片)等方式来表示;- 若只需要提取单行或单列,那么可以省略
column_index
的设置; - 若需要提取多行或多列,那么可以使用整数范围(切片)来表示,通常会使用Python的切片表示方式,并需设置
row_index
和column_index
的起始与结束位置。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:使用Python Pandas .iloc[] 提取行数 - Python技术站