为了账号安全,请及时绑定邮箱和手机立即绑定

从数据框列中减去一个系列的 Pandas 问题

从数据框列中减去一个系列的 Pandas 问题

慕虎7371278 2021-08-05 14:55:55
我正在从数据框列中减去一个系列。df                daily_return    daily_weight2003-01-01T          1.2            622003-01-02T          1.3            632003-01-03T          1.1            64 ...和系列                    Return2003-01-01T          1.2            2003-01-02T          1.3            2003-01-03T          1.1             ...索引是相同的日期时间索引。我使用以下语法:df['Daily Return'].subtract(s['Return'],axis=0)我得到的结果是:ValueError: cannot reindex from a duplicate axis我究竟做错了什么?
查看完整描述

2 回答

?
慕斯王

TA贡献1864条经验 获得超2个赞

如果您已正确定义df和,则您的逻辑工作正常s:


idx = pd.Index(['2003-01-01T', '2003-01-02T', '2003-01-03T'])


df = pd.DataFrame.from_dict({'Daily Return': [1.2, 1.3, 1.1],

                             'daily_weight': [62, 63, 64]})


s = pd.DataFrame.from_dict({'Return': [1.2, 1.3, 1.1]})


df.index, s.index = idx, idx


print(df['Daily Return'].subtract(s['Return'],axis=0))


2003-01-01T    0.0

2003-01-02T    0.0

2003-01-03T    0.0

dtype: float64


查看完整回答
反对 回复 2021-08-05
?
撒科打诨

TA贡献1934条经验 获得超2个赞

谢谢大家。

这实际上是一个数据问题。数据以某种方式被转换,一个索引中的索引在导入时被损坏。代码很好。

如果可以的话,我会投票给自己一个。


查看完整回答
反对 回复 2021-08-05
  • 2 回答
  • 0 关注
  • 151 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信