2024-04-29 13:52:42 发布
网友
market['AAPL']是一个包含苹果每日股票回报的数据框架
我注意到:
market['AAPL'].apply(lambda x: np.exp(x)) market['AAPL'].apply(lambda x: np.cumprod(np.exp(x)))
两者的结果相同 为什么np.cumprod不工作
因为x是一个数字,所以np.exp是一个数字,一个数字的乘积就是它本身
x
np.exp
您可能想在AAPL列中应用累积乘积。您当前的尝试无效,因为每行.apply有效。因此,每次为单个数字调用np.cumprod,而不是为数字数组调用
.apply
np.cumprod
相反,请尝试以下方法:
import pandas as pd import numpy as np aapl = {"AAPL": np.linspace(1, 2, 10)} df = pd.DataFrame(appl) # Calculate exp for the column, then calculate # the cumulative product over the column df['cum-AAPL'] = np.exp(df['AAPL']).cumprod())
因为
x
是一个数字,所以np.exp
是一个数字,一个数字的乘积就是它本身您可能想在AAPL列中应用累积乘积。您当前的尝试无效,因为每行
.apply
有效。因此,每次为单个数字调用np.cumprod
,而不是为数字数组调用相反,请尝试以下方法:
相关问题 更多 >
编程相关推荐