if语句:如果数据点数小于x,则返回NaN,否则计算数据框的年化收益

时间:2019-02-25 13:07:46

标签: dataframe if-statement

我有一个数据框,其中包含不同资金的月度日志回报。数据框由100多个列和500行组成。对于无法返回的日期,将报告np.nan值。我正在尝试计算每个基金在过去三年中的年度回报,并且正在使用以下功能:

defcalculate_3Y_return(数据):

 data_cumsum = data.iloc[-36:].cumsum()
 return_3Y = data_cumsum.iloc[-1]*(1/3)

 return_3Y

对于没有足够数据点的基金(其业绩记录短于36个月),我希望函数返回NaN。

您能帮我在函数中添加if语句吗?该语句将为具有36个数据点的基金计算3年年化收益,为少于36个数据点的基金计算NaN(这些基金是最近推出的,因此可用数据点的数量少于36)。

我已经尝试使用dataframe.count()了,但是没有帮助

非常感谢

0 个答案:

没有答案