我想简化我的代码,因为它非常耗时。在我的问题中,R是一个回合4000,所以 corr 函数应该被调用超过16000000次。我可以简化这段代码吗?
function corr = corr (X, i, j)
covariance = (cov((X(:,i)),(X(:,j))));
corr = (covariance(1,2))/((sqrt(var(X(:,i)))) * (sqrt(var(X(:,j)))) );
end
编辑:所以,我应该说, corr 函数由我编写,它计算两个特征之间的相关性。
这是我的 corr 功能:
@Override
public void onErrorResponse(VolleyError error) {
Log.e(TAG, error.toString());
// Use getActivity().runOnUiThread(...) if it's a fragment.
// In the case of activity
runOnUiThread(new Runnable() {
@Override
public void run() {
hasInternet = false;
snackbar = Snackbar.make(coordinator, "Slow internet connection detected", Snackbar.LENGTH_INDEFINITE)
.setAction("RETRY", new View.OnClickListener() {
@Override
public void onClick(View view) {
makeRequest();
}
});
snackbar.show();
}
}
}
答案 0 :(得分:2)
这是一个矢量化版本:
C = cov(SelectedData);
V = sqrt(diag(C));
VP2 = bsxfun(@times,V,V.');
CORR = C ./ VP2;
Red1 = sum(abs(CORR(:)));