Юля проблемы с концом, матрица - PullRequest
2 голосов
/ 27 октября 2019

Когда я набираю эту ошибку, прыжки в Джулии, но я не знаю почему, она должна работать ./

julia> A = [1 2 3 4; 5 6 7 8; 1 2 3 4; 5 6 7 8]
4×4 Array{Int64,2}:
 1  2  3  4
 5  6  7  8
 1  2  3  4
 5  6  7  8

julia> B = A[2:1:end; 2:1:end]
ERROR: syntax: missing last argument in "2:1:" range expression 
Stacktrace:
 [1] top-level scope at REPL[9]:0

formMA

1 Ответ

1 голос
/ 27 октября 2019

Синтаксис для индексации многомерного массива использует запятую , вместо точки с запятой ; в качестве разделителя между измерениями, см. https://docs.julialang.org/en/v1/manual/arrays/#man-array-indexing-1. Таким образом, вы хотите сделать:

julia> A = [1 2 3 4; 5 6 7 8; 1 2 3 4; 5 6 7 8]
4×4 Array{Int64,2}:
 1  2  3  4
 5  6  7  8
 1  2  3  4
 5  6  7  8

julia> B = A[2:1:end, 2:1:end]
3×3 Array{Int64,2}:
 6  7  8
 2  3  4
 6  7  8

ПримечаниеТакже вы можете опустить 1 в спецификации диапазона, так как шаг 1 является значением по умолчанию:

julia> A[2:end, 2:end]
3×3 Array{Int64,2}:
 6  7  8
 2  3  4
 6  7  8
...