2016-06-29 3 views
1

私はFloatingPointErrorsを与えているいくつかの標準偏差を計算しています。データシリーズをDecimal(https://docs.python.org/3/library/decimal.htmlを使用)に変換して、問題が解決するかどうかを確認したいと考えました。10進数のパンダですか?

パンダシリーズをdecimalにすることはできません。

は、どのように私は私が行うことができるような、float64の正常なpd.Seriesを取り、decimalpd.Seriesに変換することができます:

Series.pct_change().ewm(span=35, min_periods=35).std() 

答えて

0

は、この作品のようなものをしませんか?

def column_round(decimals): 
    return partial(Series.round, decimals=decimals) 

df.apply(column_round(2)) 

代わりに私たちは、これは私がそれに探していると、これは解決すると思われる代わりにnp.float64

npquantize = np.vectorize(decimal.Decimal.quantize) 

の小数として変数を残して、丸めを行うにdecimal.quantize機能を使用することができますnp.vectorizeを使用することができます問題は、pct_change

ts.diff().div(ts.shift(1)) 
+1

私が正しく理解している場合、これはまだ浮動小数点演算を使用します。私は10進算術を強制したい。 – cjm2671

+0

あなたは、系列をnumpy配列に変換し、todecimalを適用する前にnp.vectorizeを適用することを検討しましたか? – SerialDev

関連する問題