Python dataframe 索引
时间: 2025-06-06 10:36:29 浏览: 19
### Python Pandas DataFrame 索引使用方法
在Python中,`pandas.DataFrame` 是一种非常强大的二维表格数据结构。通过索引可以方便地访问、修改和操作数据。以下是关于 `DataFrame` 中索引的一些常见操作及其示例。
#### 设置索引
可以通过 `set_index()` 方法将某列设为索引:
```python
import pandas as pd
data = {'Name': ['John', 'Emma', 'Max'], 'Age': [28, 32, 45], 'City': ['New York', 'Paris', 'London']}
df = pd.DataFrame(data)
print("原始DataFrame:")
print(df)
print("=" * 30)
# 将'Name'列设置为索引
df.set_index('Name', inplace=True)
print("设置索引后的DataFrame:")
print(df)
```
此代码展示了如何将 `'Name'` 列转换为行索引[^1]。
---
#### 访问特定行的数据 (基于标签)
如果已经设置了自定义索引,则可以直接通过 `.loc[]` 来按索引名称获取指定行的数据:
```python
row_data = df.loc['Emma']
print(row_data)
```
这里使用了 `.loc[]` 进行基于标签的定位[^4]。
---
#### 多重条件筛选
除了单个索引外,还可以组合多个条件来过滤数据框中的记录:
```python
filtered_df = df[(df.index == 'John') | (df['Age'] > 30)]
print(filtered_df)
```
这段程序实现了对满足一定逻辑关系项的选择[^3]。
---
#### 修改现有索引
有时可能需要重新调整当前存在的索引或者创建新的层次化索引(MultiIndex),这同样能够借助于内置函数完成。
例如下面的例子演示了怎样构建一个多级索引表:
```python
arrays = [['bar', 'bar', 'baz', 'baz', 'foo', 'foo'],
['one', 'two', 'one', 'two', 'one', 'two']]
tuples = list(zip(*arrays))
index = pd.MultiIndex.from_tuples(tuples, names=['first', 'second'])
multi_level_df = pd.DataFrame({'A': range(6)}, index=index)
print(multi_level_df)
```
以上脚本生成了一个具有双重分类依据的新数据集[^2]。
---
#### 返回DataFrame类型的单一列
当仅需提取某一字段而又希望保持其结果仍属于整个框架的一部分而非序列时,可采用如下方式实现这一点:
```python
single_column_as_dataframe = df[['City']]
print(single_column_as_dataframe)
```
它强调即使只请求了一条信息也依旧维持着完整的格式呈现[^3]。
---
阅读全文
相关推荐


















