2012-01-27 2 views
0

다음 질문이 있습니다. 함수 histcnd를 크기 744x2의 행렬에 적용하고 있습니다. 이 함수는 특정 가장자리 내의 값의 빈도를 계산합니다. 내가 원하는 것은, 예를 들어, 5 개의 값의 그룹으로 가장자리를 설정하는 것입니다,하지만 나는 그것을 할 수 없을 것 같습니다. 함수의 구문은 histcnd (X, edges)입니다. 여기에서 edges는 X의 열 수와 동일한 길이 여야합니다. 'edges'를 2 열 벡터로 정의하여 각 값을 병합하는 방법은 무엇입니까? 5 개 값마다 열이 있습니까? 정말 고마워요.행렬 X의 모든 차원에 대해 균일 한 격자를 제공하는 수치 벡터를 만드는 방법은 무엇입니까?

답변

0

무엇과 같은 것을 사용에 대해 : 당신은 당신의 데이터에 대해 뭔가를 알고 있다면 당신은 아마 더 지능적인 방법으로 각 축에 대한 최소/최대 값을 선택할 수 있습니다

X = randn(744,2); 
[a,b] = size(X); 
edges = num2cell([linspace(min(X(1,:)),max(X(1,:)),a/5); linspace(min(X(2,:)), max(X(2,:)),a/5)],2); 

# not sure if it's the same histcnd, the one I found wants edges to be a cell array 
H = histcnd(X, edges); 

.