📌  相关文章
📜  Pandas – 如何在给定的 DataFrame 中重置索引(1)

📅  最后修改于: 2023-12-03 15:03:28.624000             🧑  作者: Mango

Pandas – 如何在给定的 DataFrame 中重置索引

在 Pandas 中,我们可以使用 reset_index() 函数来重置 DataFrame 的索引。重置索引可以帮助我们去除原始索引,然后将新索引分配给 DataFrame 的行。

重置索引

使用 reset_index() 函数可以在字典中删除原始索引。该函数可以在 DataFrame 上调用,并且返回一个新的 DataFrame,其中新索引已分配给 DataFrame 中的行。

import pandas as pd

# 创建示例数据
data = {'name': ['John', 'Mike', 'Sandra', 'Anna'],
        'age': [25, 30, 33, 28],
        'city': ['London', 'Paris', 'New York', 'Sydney']}
df = pd.DataFrame(data)

# 打印原始 DataFrame
print("Original DataFrame:")
print(df)

# 重置索引
new_df = df.reset_index(drop=True)

# 打印新 DataFrame
print("New DataFrame:")
print(new_df)

输出结果:

Original DataFrame:
     name  age      city
0    John   25    London
1    Mike   30     Paris
2  Sandra   33  New York
3    Anna   28    Sydney
New DataFrame:
     name  age      city
0    John   25    London
1    Mike   30     Paris
2  Sandra   33  New York
3    Anna   28    Sydney

在上面的示例中,我们创建了一个包含名称、年龄和城市的 DataFrame。然后我们调用了 reset_index() 函数,并使用 drop=True 参数删除了原始索引。最后,我们打印了新的 DataFrame。

将列更改为索引

要更改 DataFrame 中的列为索引,我们可以使用 set_index() 函数。这将返回一个新 DataFrame,其中指定的列将作为索引。

import pandas as pd

# 创建示例数据
data = {'name': ['John', 'Mike', 'Sandra', 'Anna'],
        'age': [25, 30, 33, 28],
        'city': ['London', 'Paris', 'New York', 'Sydney']}
df = pd.DataFrame(data)

# 使用 set_index() 将列更改为索引
new_df = df.set_index('name')

# 打印新 DataFrame
print(new_df)

输出结果:

        age      city
name                
John    25    London
Mike    30     Paris
Sandra  33  New York
Anna    28    Sydney

在上面的示例中,我们将 name 列更改为索引,并使用 set_index() 函数返回新 DataFrame。在新 DataFrame 中,我们可以看到 name 列被转换为索引。