자료 매번 검색하기 귀찮아서 만든 블로그
Julia - 행렬을 여러 열에 대해 정렬하기 본문
예전 버전에서는 sortrows였고, 현재는 sortslices를 사용한다고 한다
원하는 것은 행렬이 주어져있을 때, 우선순위를 정해 여러개의 열에 대해 정렬을 하는 것이다.
예시로 행렬이 다음과 같이 주어졌을 때,
julia> t = [1 0 3 ; 1 1 2; 0 0 5; 0 1 10]
4×3 Matrix{Int64}:
1 0 3
1 1 2
0 0 5
0 1 10
아래와 같이 1번 열 → 2번 열의 순서로 데이터를 정렬하고 싶다.
4×3 Matrix{Int64}:
0 0 5
0 1 10
1 0 3
1 1 2
이를 위해 sortslices 함수를 사용한다.
인수의 by 부분에 정렬하고자 하는 열의 우선순위를 적어준다.
julia> sortslices(t, dims=1, by=x->(x[1], x[2]))
4×3 Matrix{Int64}:
0 0 5
0 1 10
1 0 3
1 1 2
dims=1은 행 정렬, dims=2는 열 정렬이다.
'Julia' 카테고리의 다른 글
Julia - MAT 사용하여 .mat 파일 만들기 (0) | 2022.11.04 |
---|---|
Julia - jld 사용하여 변수 값 저장, 불러오기 (0) | 2022.11.04 |
Julia - 1차원 배열의 배열을 행렬로 변환하기 (0) | 2022.10.23 |
Julia - Progressbar 사용하기 (0) | 2022.10.21 |
Julia - sizehint! (0) | 2022.02.13 |