在Pandas中,df[]
、df.loc
和 df.iloc
是用于访问DataFrame数据的三种主要方式。它们之间的区别主要体现在索引方式和功能上:
- df[]
- 索引方式:使用列名直接进行索引。
- 功能:主要用于获取或设置DataFrame的单列数据,返回一个Series对象。
-
示例:
series_A = df['A']
。 -
df.loc
- 索引方式:基于标签(行标签和列标签)进行索引。
- 功能:可以同时使用行标签和列标签来选取数据,支持切片、布尔索引等复杂操作。
-
示例:
df.loc[0:1, :]
选取第0行到第1行的所有列数据;df.loc[df['B'] > 4, :]
选取'B'列值大于4的所有行。 -
df.iloc
- 索引方式:基于整数位置(行号和列号)进行索引。
- 功能:可以同时使用行号和列号来选取数据,支持整数位置的切片操作,但不能使用标签名称。
- 示例:
df.iloc[0:2, :]
选取第0行到第2行的所有列数据;df.iloc[:, 0]
选取所有行的第0列数据。
总结来说,df[]
主要用于简单的列索引操作,df.loc
提供了基于标签的灵活索引方式,而 df.iloc
则提供了基于位置的精确索引方式。根据具体需求选择合适的方法可以更高效地处理数据。