pandasObject.index() 与使用系列重建索引
pandasObject.index() Vs reindexing using series
python pandas 中的重新索引功能也可以在 python 系列中完成,如下所示。
import pandas as pd
order = ['a','c','b']
series_data = pd.Series([1,2,3],index=order)
series_data
既然如此,为什么我们要明确地去重建索引?
让我们以 index
为例,在 Series
中可用
s = pd.Series([1,2,3], index=['k','f','t'])
s
# k 1
# f 2
# t 3
# dtype: int64
我们可以声明以上系列已分配索引,数据类型为 int64
。
现在让我们继续 reindex
:
order = ['k','c','b']
s.reindex(order)
# k 1.0
# c NaN
# b NaN
# dtype: float64
如您所见,我们传递了两个新索引 c
和 b
,它们在原始系列中不存在,因此这些值被分配为等于 NaN
。由于 NaN
有 dtype
of float64
,因此最终系列结果只有三个索引 k, c and b
和 dtype
为 float64
.
我希望这能说明 Series
内部的 index
与外部 reindex
的区别。
您可以参考下文link了解重建索引。
https://www.tutorialspoint.com/python_pandas/python_pandas_reindexing.htm
python pandas 中的重新索引功能也可以在 python 系列中完成,如下所示。
import pandas as pd
order = ['a','c','b']
series_data = pd.Series([1,2,3],index=order)
series_data
既然如此,为什么我们要明确地去重建索引?
让我们以 index
为例,在 Series
s = pd.Series([1,2,3], index=['k','f','t'])
s
# k 1
# f 2
# t 3
# dtype: int64
我们可以声明以上系列已分配索引,数据类型为 int64
。
现在让我们继续 reindex
:
order = ['k','c','b']
s.reindex(order)
# k 1.0
# c NaN
# b NaN
# dtype: float64
如您所见,我们传递了两个新索引 c
和 b
,它们在原始系列中不存在,因此这些值被分配为等于 NaN
。由于 NaN
有 dtype
of float64
,因此最终系列结果只有三个索引 k, c and b
和 dtype
为 float64
.
我希望这能说明 Series
内部的 index
与外部 reindex
的区别。
您可以参考下文link了解重建索引。 https://www.tutorialspoint.com/python_pandas/python_pandas_reindexing.htm