更新时间:2023-11-03 来源:黑马程序员 浏览量:
pandas中提供了多种使用单层索引访问Series类对象和DataFrame类对象的方式,包括[]、loe、iloc、at和iat,关于这几种方式的介绍如下。
pandas中使用[]访问数据的方式与访问数组元素的方式类似,其使用方式如下。
变量{索引}
需要说明的是,若变量是一个Series类对象,则会获取索引对应的单个数据;若变量是一个DataFrame类对象,它在使用“[索引J”访问数据时会将索引视为列索引,获取该索引对应的一列数据。
下面创建一个Series类对象ser,使用“变量[索引]”访问该对象的单个数据,代码如下。
In []: inport pandas as pd ser = pd.Series(['A', 'B','C','D'], index=('one','two','three',*four']) print(ser) one A two B three C four D dtype: object In []: # 访问素引为'one'的数据 print(ser['one']) A
下面创建一个DataFrame类对象df,使用“变量[索引]”访问该对象的一列数据,代码如下。
In []: df = pd.DataF'rame([[0, 2, 3], [0, 4, 1], [10, 20, 30]], index=|4, 5, 6], columns=['A', 'B', 'C']) print(df) A B C 4 0 2 3 5 0 4 3 6 10 20 30 In []: # 访问列索引为'A'的数据 print(df['A']) 4 O 5 0 6 10 Name: A, dtype: int64
pandas 中也可以使用loc和iloc访问数据,其使用方式如下。
变量.loc[索引] 变量.iloc[索引]
以上方式中,“lod[索引]”中的索引必须为自定义的标签索引,而“ilocf[索引]”中的索引必须为自动生成的整数索引。需要说明的是,若变量是一个DataFrame类对象,它在使用“loc[索引]”或“iloc[索引]”访问数据时会将索引视为行索引,获取该索引对应的一行数据。
接下来,分别使用loc和iloc访问ser对象中标签索引为'two'与整数索引为2的数据,代码如下。
In []: # 访问标签索引为'two'的数据 print(ser.loc('two')) B In []: 访问整数索引为2的数据 print(ser.1loc[2)) C
使用loc和iloc访问df对象中标签索引为4和整数索引为1的数据,代码如下。
In []: # 访问标签索引为4的数据 print(df.loc(4]) A 0 B 2 C 3 Name: 4, dtype: int64 In []: # 访问整数索引为1的数据 print(df.iloc[1]) A 0 B 4 C 1 Name: 5, dtype: int64
pandas 中还可以使用at和iat 访问数据。与前两种方式相比,这种方式可以访问DataFrame类对象中的单个数据。以DataFrame类对象为例,使用at和iat 访问数据的基本方式如下。
变量.at[行素引,列索引1 变量,iat[行素引,列索引]
以上方式中,“at[行索引,列索引]”中的索引必须为自定义的标签索引,“iat[行索引,列索引]”中的索引必须为自动生成的整数索引。
接下来,使用at访问d对象中行标签索引为5、列标签索引为B'的数据,代码如下。
In []: # 访问行标签索引为5、列标签索引为'8'的数据 print(df.at[5,'B']) 4
【AI设计】北京143期毕业仅36天,全员拿下高薪offer!黑马AI设计连续6期100%高薪就业
2025-09-19【跨境电商运营】深圳跨境电商运营毕业22个工作日,就业率91%+,最高薪资达13500元
2025-09-19【AI运维】郑州运维1期就业班,毕业14个工作日,班级93%同学已拿到Offer, 一线均薪资 1W+
2025-09-19【AI鸿蒙开发】上海校区AI鸿蒙开发4期5期,距离毕业21天,就业率91%,平均薪资14046元
2025-09-19【AI大模型开发-Python】毕业33个工作日,就业率已达到94.55%,班均薪资20763元
2025-09-19【AI智能应用开发-Java】毕业5个工作日就业率98.18%,最高薪资 17.5k*13薪,全班平均薪资9244元
2025-09-19