我有两个带有重复索引的pandas.Series
,类似这样:
>> x = pandas.Series(range(5,10), index = ['a' for _ in xrange(5)])
>> y = pandas.Series(range(-5,-10, -1), index = ['a' for _ in xrange(5)])
看起来像这样
x y
a 5 -5
a 6 -6
a 7 -7
a 8 -8
a 9 -9
然后在执行x+y
时,我得到的pandas.Series
值为0。似乎它遵循的是顺序,而不是可能是或可能不是预期行为的索引。你知道吗
你知道在pandas
中这是如何处理的吗?如果这确实是预期的行为(即,我应该总是期望相同的行为)?你知道吗
编辑: 请注意,pandas根据索引进行元素求和,即:
>> pd.Series([1,2], index=['a', 'b']) + pd.Series([-1,-2], index=['b', 'a'])
a -1
b 1
我认为当所有值都相同时,pandas会忽略索引。如果添加另一个值,则会得到不同的结果:
与
以及
现在,您将得到以下结果:
重复索引会导致
x
和y
中'a'
上所有可能匹配项的附加行。你知道吗基于@othman nejjar的评论
您可以使用:
输出:
相关问题 更多 >
编程相关推荐