cjm*_*671 5 python numpy decimal python-3.x pandas
我正在计算一些给出FloatingPointErrors的标准偏差.我想尝试将数据系列转换为Decimal(使用https://docs.python.org/3/library/decimal.html),看看这是否解决了我的问题.
我似乎无法制作一只大熊猫系列decimal
.
我怎么能走正常pd.Series
的float64
,并转换成pd.Series
的decimal
,这样我可以这样做:
Series.pct_change().ewm(span=35, min_periods=35).std()
Run Code Online (Sandbox Code Playgroud)
小智 5
from decimal import Decimal
df['col_a'] = df['col_a'].apply(lambda x: Decimal(str(x)))
Run Code Online (Sandbox Code Playgroud)
像这样的东西会起作用吗?
def column_round(decimals):
return partial(Series.round, decimals=decimals)
df.apply(column_round(2))
Run Code Online (Sandbox Code Playgroud)
或者让np.vectorize
我们使用decimal.quantize
函数来进行舍入,这将使变量保留为小数而不是np.float64
npquantize = np.vectorize(decimal.Decimal.quantize)
Run Code Online (Sandbox Code Playgroud)
我一直在研究它,这似乎可以解决 pct_change 的问题
ts.diff().div(ts.shift(1))
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5406 次 |
最近记录: |