Matlab中的函数“pdist”

时间:2017-09-19 17:30:05

标签: matlab optimization mathematical-optimization

我有一个名为r的N乘2矩阵(N非常大)。 r是2D中点的位置。我搜索了计算点之间距离的最佳优化方法。如果没有尝试将其改为方阵,我发现dist函数是最好的,耗时较少。我想知道我是否写作

D= pdist(r, 'euclidean');

当我需要粒子i和j之间的距离时,使用D矢量找到它的最佳方法是什么?如果不使用if,我真的没办法。 我知道我可以通过

来做到这一点
if (i < j) 
    D((i–1)*(m–i/2)+j–i)
end

但由于N非常大,所以效率不高。有人可以帮帮我吗?

1 个答案:

答案 0 :(得分:0)

我将jjM = squareform(D)作为行和列索引用于大小和N的度量距离矩阵ind。结果为D(ind)M(ii,jj)等于t = sort([ii, jj]); % temporary variable ii = t(2); % maximum of ii and jj jj = t(1); % minimum of ii and jj t = N-1:-1:1; ind = sum(t(1:jj-1)) + ii - jj;

import React, { Component } from 'react';
import { connect } from 'react-redux';
import  * as Actions from '../actions';

class PollOption extends Component {
constructor(props) {
    super(props);
}

handleVoteClick(e){
    e.preventDefault();
    console.log("handleclick was clicked");
}

render(props){
    return (
        <div key={this.props.title}  style={{ clear: 'left' }}>
            <h6>{this.props.title} : </h6>
            <div style={{marginTop : "5px"}}>
                <div style={{ 
                        display: "inline-black",
                        float: "left",
                        backgroundColor : "cornflowerblue",
                        height : "50",
                        padding : "15",
                        marginBottom : "15px",
                        minWidth: "50px",
                        width : this.props.value,
                        color: "white",
                        lineHeight: "25px"
                    }}>
                    <div style={{ 
                        display : "inline-block",
                    }}>
                        {this.props.value}
                    </div>
                </div> 
                <button 
                    style={{ 
                    display: "inline-block",
                    height: "50",
                    marginLeft: "20",
                    }} 
                    className="btn btn-primary"
                    onClick={this.handleVoteClick} <------this guy!---
                    > 
                    Vote 
                </button>
            </div>
        </div>
    );
}
};

export default PollOption;