2016-09-21 10 views
0

私は時間の経過と共にデータポイントのセットを持っていますが、欠落しているデータがあり、データは定期的な間隔ではありません。定期的に時間をかけて設定し、完全なデータを得るために、私は次のようでした:これはscipyを使って推定するのに最も効率的で正確な方法ですか?

import pandas as pd 
import numpy as np 
from scipy import interpolate 

x = data['time'] 
y = data['shares'] 
f = interpolate.interp1d(x, y, fill_value='extrapolate') 

time = np.arange(0, 3780060, 600) 

new_data = [] 
for interval in time: 
    new_data.append(f(interval)) 

test = pd.DataFrame({'time': time, 'shares': y}) 
test_func = test_func.astype(float) 

元と外挿したデータセットがプロットされ、彼らはほぼ完全に並ぶように見えるの両方の場合は、私はまだかしら上記を達成するためのより効率的かつ/または正確な方法がある。

答えて

1

あなたが定期的に値が必要な場合はそれだけで補間であるのでfill_value =「外挿」は、冗長である。この

new_data = f(time) 

のように、一度だけ補間関数を適用する必要があります。新しい間隔が元の間隔よりも広い場合は、「外挿」を使用することができます。しかし、それは悪い習慣です。

関連する問題