Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import numpy as np
- import rpy2.robjects.numpy2ri
- from rpy2.robjects.packages import importr
- rpy2.robjects.numpy2ri.activate()
- # Set up our R namespaces
- R = rpy2.robjects.r
- DTW = importr('dtw')
- # Generate our data
- idx = np.linspace(0, 2*np.pi, 100)
- template = np.cos(idx)
- query = np.sin(idx) + np.array(R.runif(100))/10
- # Calculate the alignment vector and corresponding distance
- alignment = R.dtw(query, template, keep=True,window_type='sakoechiba',
- window_size=5)
- >>> RRuntimeError: Error in window.function(row(wm), col(wm), query.size= n, reference.size = m, :
- argument "window.size" is missing, with no default
- from rpy2.robjects.functions import SignatureTranslatedFunction
- Rsession.dtw = SignatureTranslatedFunction(Rsession.dtw,
- init_prm_translate={'window_size': 'window.size'})
- import numpy as np
- import rpy2.robjects.numpy2ri
- from rpy2.robjects.packages import importr
- from rpy2.robjects.functions import SignatureTranslatedFunction
- rpy2.robjects.numpy2ri.activate()
- # Set up our R namespaces
- R = rpy2.robjects.r
- DTW = importr('dtw')
- Rsession.dtw = SignatureTranslatedFunction(Rsession.dtw,init_prm_translate={'window_size': 'window.size'})
- # Generate our data
- idx = np.linspace(0, 2*np.pi, 100)
- template = np.cos(idx)
- query = np.sin(idx) + np.array(R.runif(100))/10
- # Calculate the alignment vector and corresponding distance
- alignment = R.dtw(query, template, keep=True,window_type='sakoechiba',
- window_size=10)
- dist = alignment.rx('distance')[0][0]
- print(dist)
- >>> 117.348292359
Add Comment
Please, Sign In to add comment