- Справка Scilab
- Основные функции
- Побитовые операции
- Комплексные числа
- Дискретная математика
- Элементарные матрицы
- логарифм - экспонента - степень
- Плавающая запятая
- Представление целых чисел
- Целые числа
- Манипуляции с матрицами
- Матричные операции
- Поиск и сортировка
- Операции с множествами
- Тригонометрия
- &, &&
- выделение
- ind2sub
- вставка
- isempty
- isequal
- modulo
- ndims
- |, ||
- size
- sub2ind
Please note that the recommended version of Scilab is 2026.0.0. This page might be outdated.
See the recommended documentation of this function
вставка
частичное присвоение или модификация значения переменной
присвоение
частичное присвоение значения переменной
Синтаксис
x(i,j)=a x(i)=a l(i)=a l(k1)...(kn)(i)=a или l(list(k1,...,kn,i))=a l(k1)...(kn)(i,j)=a или l(list(k1,...,kn,list(i,j))=a
Аргументы
- x
матрица любого типа (constant, sparse, polynomial,...)
- l
list
- i,j
индексы
- k1,...kn
индексы с целочисленными значениями
- a
новое значение элемента
Описание
Для матриц
Если x является матрицей, то индексы i и j могут быть:
- вещественными скалярами или векторами или матрицами
В этом случае значения, указанные как индексы, должны быть положительными и учитывается лишь их целая часть.
Если
aявляется матрицей с размерами(size(i,'*'),size(j,'*')), тоx(i,j)=aвозвращает новую матрицуxтакую, какx(int(i(l)),int(j(k)))=a(l,k)дляlот 1 доsize(i,'*')иkот 1 доsize(j,'*'), другие изначальные элементыxостаются неизменными.Если
aявляется скаляром, тоx(i,j)=aвозвращает новую матрицуxтакую, какx(int(i(l)),int(j(k)))=aдляlот 1 доsize(i,'*')иkот 1 доsize(j,'*'), другие изначальные элементыxостаются неизменными.Если максимальное значение
iилиjпревосходит соответствующие размеры матрицыx, то массивxсначала расширяется до требуемых размеров нулевыми элементами для стандартных матриц, символьными строками нулевой длины для строковых матриц и значениями "ложь" для матриц логических значений.x(i,j)=[]удаляет строки, определённые черезi, еслиjсовпадает со всеми столбцамиxили удаляет столбцы, определённые черезj, еслиiсовпадает со всеми строкамиx. В других случаяхx(i,j)=[]формирует ошибку.x(i)=a, гдеa-- вектор, возвращает новую матрицуx, такую чтоx(int(i(l)))=a(l)дляlот 1 доsize(i,'*'), другие изначальные элементыxявляются неизменными.x(i)=a, гдеa-- скаляр, возвращает новую матрицуx, такую чтоx(int(i(l)))=aдляlот 1 доsize(i,'*'), другие изначальные элементыxявляются неизменными.Если максимальное значение
iпревосходитsize(x,1), тоxсначала расширяется до требуемого размера нулевыми элементами для стандартных матриц, символьными строками нулевой длины для строковых матриц и значениями "ложь" для матриц логических значений.- если
xявляется скаляром (1x1)матрица
aможет быть вектор-строкой (соответственно вектор-столбцом) размеромsize(i,'*'). Результирующая матрицаxявляется вектором-строкой (соответственно вектор-столбцом);- если
xявляется вектор-строкойвектор
aдолжен быть вектор-строкой размеромsize(i,'*');- если
xявляется вектор-столбцомвектор
aдолжен быть вектор-столбцом размеромsize(i,'*');- если
xв общем видематрица
aдолжна быть вектор-строкой или вектор-столбцом размеромsize(i,'*')и максимальное значениеiне может превосходитьsize(x,'*').
x(i)=[]удаляет элементы, определённые черезi.
- символом "двоеточие"
Символ двоеточие
:означает "все элементы".x(i,:)=aинтерпретируется какx(i,1:size(x,2))=ax(:,j)=aинтерпретируется какx(1:size(x,1),j)=ax(:)=aвозвращает вxматрицуa, элементы которой переставлены в соответсвии с размерамиx. Размерsize(x,'*')должен быть равен размеруsize(a,'*').
- векторами логических значений
Если индекс (
iилиj) задан в виде вектора логических значений, то он интерпретируется какfind(i)или, соответственно,find(j).- полиномами
Если индекс (
iилиj) задан в виде полиномов или в виде неявного вектора полиномов, то он интерпретируется какhorner(i,m)или, соответственно,horner(j,n), гдеmиnсвязаны с размерамиx. Даже если это работает для всех полиномов, рекомендуется использовать символ$для удобочитаемости.
Случай простых списков или типизированных списков (tlist)
Если они имеются в наличии, то
kiуказывают путь до элемента подсписка структуры данныхl. Они позволяются рекурсивную вставку без промежуточных копий. Инструкцииl(k1)...(kn)(i)=aиl(list(k1,...,kn,i)=a)интерпретируются следующим образом:lk1 = l(k1).. = ..lkn = lkn-1(kn)lkn(i) = alkn-1(kn) = lkn.. = ..l(k1) = lk1А инструкции
l(k1)...(kn)(i,j)=aиl(list(k1,...,kn,list(i,j))=aинтерпретируется как:lk1 = l(k1).. = ..lkn = lkn-1(kn)lkn(i,j) = alkn-1(kn) = lkn.. = ..l(k1)= lk1iможет быть:вещественным неотрицательным скаляром.
l(0)=aдобавляет элемент к списку "слева".l(i)=aприсваивает элементуiспискаlзначениеa. Еслиi>size(l), тоlсначала расширяется элементами нулевой длины (неопределённые).l(i)=null()удаляетi-тый элемент из списка.полиномом. Если
iявляется полиномом, то он интерпретируется какhorner(i,m), гдеm=size(l). Даже если это работает для всех полиномов, рекомендуется использовать символ$для удобочитаемости.
k1,..knмогут быть:вещественным положительным скаляром;
полиномом, интерпретируемым как
horner(ki,m), гдеmявляется соответствующим размером подсписка;символьной строкой, связанной с именем элемента подсписка.
Примечания
Для программно формируемых типов матриц, таких, как рациональные функции
и линейные системы пространства состояний, синтаксис x(i)
нельзя использовать для вставки элементов вектора из-за путаницы со вставкой
элемента списка. Должен использоваться синтаксис x(1,j)
или x(i,1) .
Примеры
В СЛУЧАЕ МАТРИЦЫ
a = [1 2 3 ; 4 5 6] a(1,2) = 10 a([1 1],2) = [-1 ; -2] a(:,1) = [8 ; 5] a(1,3:-1:1) = [77 44 99] a(1) = %s a(6) = %s + 1 a(:) = 1:6 a([%t %f],1) = 33 a(1:2,$-1) = [2 ; 4] a($:-1:1,1) = [8 ; 7] a($) = 123 // x = 'test' x([4 5]) = ['4','5'] // b = [1/%s, (%s+1)/(%s-1)] b(1,1) = 0 b(1,$) = b(1,$) + 1 b(2) = [1 2] // числитель
в случае LIST или TLIST
Смотрите также
- выделение — выделение элемента матрицы или списка
- двоеточие — оператор "двоеточие"
- find — даёт индексы элементов с ненулевым значением или значением %T
- horner — evaluates some polynomials or rationals for given values
- круглые скобки — ( ) левая и правая круглые скобки
| Report an issue | ||
| << ind2sub | Основные функции | isempty >> |