我正在学习Pandas和Series,出于教育目的,我创建了这个例子:
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"one_answers"e"是NaN,因为源索引列表中有这些索引。此外,我不明白为什么输出序列是浮点的,而不是整数。
应该是
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
看起来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