【发布时间】:2020-08-16 06:55:37
【问题描述】:
这是我在这里的第一篇文章,希望你能理解我的烦恼。
所以,我有一个 DataFrame,其中包含从 2010 年开始每天大约 1200 家公司的价格。现在我想计算每家公司的总回报。我的 DataFrame 按日期索引。我可以使用
df.iloc[-1]/df.iloc[0] 方法,但有些公司后来开始公开交易,所以我无法得到这些公司的结果,因为它们除以 NaN 值。我尝试创建一个列表,其中包含每个股票(列)的第一个有效索引,然后当我尝试计算总回报时,我得到 - 错误的结果!
我尝试了一个经典的 for 循环:
for l in list:
returns = df.iloc[-1]/df.iloc[l]
例如,一只股票的最后价格是 16 美元左右,而我的第一个数据是 1.5 美元,这将是 10 倍以上的回报,但我的结果只有 1.1 左右!我还想补充一点,上述列表还包括 Date 的第一个有效索引,并且它位于第一位。
有人可以帮帮我吗?非常感谢
【问题讨论】:
-
能否提供数据框示例。
-
请看这里以帮助您改进问题:stackoverflow.com/help/how-to-ask。我们几乎不可能以目前的形式回答您的问题。
标签: python pandas dataframe stock