查看单个帖子
旧 2019-11-24, 07:08   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
默认 Correct translation of Matlab to Python (CID Distance)

This is the Matlab code for Complexity Invariance Distance (Source)



Q and C are 1d-arrays with similar length.



function d = CID(Q, C)
CE_Q = sqrt(sum(diff(Q).^2));
CE_C = sqrt(sum(diff(C).^2));
d = sqrt(sum((Q - C).^2)) * (max(CE_Q,CE_C)/min(CE_Q,CE_C));


This is my pythonic translation:



def cid_dist(Q,C):
import numpy as np
CE_Q = np.sqrt(np.sum(np.diff(Q)**2))
CE_C= np.sqrt(np.sum(np.diff(C)**2))
d = np.sqrt(np.sum((Q - C)**2)) * (np.maximum(CE_Q,CE_C)/np.minimum(CE_Q,CE_C))
return d


Is it correct?





More...
poster 当前离线   回复时引用此帖