使用 Series 在 Pandas 中重新编制索引如何工作?
How does re-index in Pandas with Series work?
我正在研究 Pandas 和系列,出于教育目的,我创建了这个示例:
s = pd.Series([1, 3, 5, 8, 2], index = ['a', 'b', 'c', 'd', 'e'])
s1 = s1.reindex(['a', 'b', 'e'])
print(s1)
我的输出:
a 1.0
b NaN
e NaN
dtype: float64
首先,我不明白为什么'b'和'e'是NaN,因为源索引列表中有这些索引。另外,我不明白为什么输出序列是浮点数,而不是整数。
似乎 s1
是一个在程序其他地方定义的变量。您可以改为执行以下操作。
s = pd.Series([1, 3, 5, 8, 2], index = ['a', 'b', 'c', 'd', 'e'])
s1 = s.reindex(['a', 'b', 'e'])
print(s1)
输出为:
a 1
b 3
e 2
dtype: int64
应该是
s1 = s.reindex(['a', 'b', 'e'])
a 1
b 3
e 2
dtype: int64
或简单的loc
s.loc[['a', 'b', 'e']]
a 1
b 3
e 2
dtype: int64
我正在研究 Pandas 和系列,出于教育目的,我创建了这个示例:
s = pd.Series([1, 3, 5, 8, 2], index = ['a', 'b', 'c', 'd', 'e'])
s1 = s1.reindex(['a', 'b', 'e'])
print(s1)
我的输出:
a 1.0
b NaN
e NaN
dtype: float64
首先,我不明白为什么'b'和'e'是NaN,因为源索引列表中有这些索引。另外,我不明白为什么输出序列是浮点数,而不是整数。
似乎 s1
是一个在程序其他地方定义的变量。您可以改为执行以下操作。
s = pd.Series([1, 3, 5, 8, 2], index = ['a', 'b', 'c', 'd', 'e'])
s1 = s.reindex(['a', 'b', 'e'])
print(s1)
输出为:
a 1
b 3
e 2
dtype: int64
应该是
s1 = s.reindex(['a', 'b', 'e'])
a 1
b 3
e 2
dtype: int64
或简单的loc
s.loc[['a', 'b', 'e']]
a 1
b 3
e 2
dtype: int64