Python 获取dataframe数据的索引

在进行数据分析和处理时,我们经常使用到DataFrame这个数据结构。DataFrame是Pandas库中的一个重要对象,它是由多个列组成的二维表格,类似于Excel中的数据表。在进行数据处理时,我们经常需要获取DataFrame的索引,以便进行数据的筛选、提取和整理。本文将介绍如何使用Python获取DataFrame数据的索引。

1. DataFrame的索引

DataFrame的索引用于标识和访问数据表中的行。它既可以是整数索引,也可以是自定义的标签索引。默认情况下,DataFrame的索引是从0开始的整数索引。我们可以通过设置index_col参数来指定某一列作为行索引。

import pandas as pd

# 创建DataFrame
data = {'Name': ['Tom', 'John', 'Mike', 'Emily'],
        'Age': [25, 30, 28, 35],
        'City': ['New York', 'London', 'Paris', 'Sydney']}
df = pd.DataFrame(data)

# 设置Name列为索引
df.set_index('Name', inplace=True)

# 查看DataFrame
df

输出结果:

Age City
Tom 25 New York
John 30 London
Mike 28 Paris
Emily 35 Sydney

2. 获取DataFrame的整数索引

如果DataFrame的索引是整数索引,我们可以使用iloc方法根据整数位置获取数据。

# 根据整数位置获取数据
df.iloc[0]

输出结果:

Age         25
City    New York
Name: Tom, dtype: object

上述代码中,iloc[0]表示获取第一行的数据。如果想要获取多行的数据,可以使用切片操作。

# 获取多行数据
df.iloc[0:2]

输出结果:

Age City
Tom 25 New York
John 30 London

3. 获取DataFrame的标签索引

如果DataFrame的索引是标签索引,我们可以使用loc方法根据索引标签获取数据。

# 根据索引标签获取数据
df.loc['Tom']

输出结果:

Age         25
City    New York
Name: Tom, dtype: object

上述代码中,loc['Tom']表示获取索引标签为'Tom'的行的数据。同样,如果想要获取多行的数据,可以使用切片操作。

# 获取多行数据
df.loc['Tom':'John']

输出结果:

Age City
Tom 25 New York
John 30 London

4. 获取DataFrame的列索引

除了行索引外,我们还可以获取DataFrame的列索引。我们可以使用columns属性获取DataFrame的列索引。

# 获取列索引
df.columns

输出结果:

Index(['Age', 'City'], dtype='object')

上述代码中,columns属性返回一个包含DataFrame列索引的Index对象。我们可以通过tolist()方法将Index对象转换为列表。

# 将列索引转换为列表
df.columns.tolist()

输出结果:

['Age', 'City']

5. 总结

本文介绍了如何使用Python获取DataFrame数据的索引。对于整数索引,我们可以使用iloc方法根据整数位置获取数据;对于标签索引,我们可以使用loc方法根据索引标签获取数据;而获取列索引则可以使用columns属性。熟练掌握这些方法可以方便我们在处理数据时灵活地提取和操作数据。希望本文对您有所帮助!