📅  最后修改于: 2023-12-03 14:46:30.155000             🧑  作者: Mango
Pandas 是一个强大灵活的 Python 数据分析库,它提供了两种重要的数据类型,Series 和DataFrame。其中 DataFrame 是表格型数据结构,它由行和列构成,可以看做是 Excel 或 SQL 表的 Python 实现版本。reindex() 是 Pandas DataFrame 中的一个重要方法,可以将 DataFrame 重新索引,返回新的 DataFrame。
DataFrame.reindex(index=None, columns=None, fill_value=None, axis=None, method=None, copy=True, level=None, limit=None, tolerance=None)
参数:
返回原DataFrame重新索引后的新DataFrame
import pandas as pd
# 定义原数据(DataFrame)
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}, index=['a', 'b', 'c'])
# reindex
df_reindex = df.reindex(index=['a', 'd', 'b', 'c'], columns=['A', 'B', 'D'])
# 输出结果
print("===原来的 DataFrame===")
print(df)
print("\n===Reindex 后的 DataFrame===")
print(df_reindex)
输出结果:
===原来的 DataFrame===
A B C
a 1 4 7
b 2 5 8
c 3 6 9
===Reindex 后的 DataFrame===
A B D
a 1.0 4.0 NaN
d NaN NaN NaN
b 2.0 5.0 NaN
c 3.0 6.0 NaN
从上面的代码中可以看出,我们首先定义了一个 DataFrame df,然后使用 reindex() 方法重新索引列和行。在返回的 DataFrame 中,我们可以发现原始的索引和列名已被重新设置。 如果值不存在,那么这个值将被设置为 NaN(在上面的示例中,D列的值全部为 NaN)。