Как предсказать курс доллара. Поиск доходной стратегии с языком R. Владимир Георгиевич Брюков
Чтение книги онлайн.

Читать онлайн книгу Как предсказать курс доллара. Поиск доходной стратегии с языком R - Владимир Георгиевич Брюков страница 5

СКАЧАТЬ Матрица1

      [,1] [,2] [,3] [,4] [,5]

      [1,] 1 4 7 10 13

      [2,] 2 5 8 11 14

      [3,] 3 6 9 12 15

      Эту же матрицу, но из трех столбцов (ncol=3) можно создать следующим образом:

      > Матрица2 <– matrix(1:15, ncol=3)

      # количество столбцов задается аргументом ncol

      > Матрица2

      [,1] [,2] [,3]

      [1,] 1 6 11

      [2,] 2 7 12

      [3,] 3 8 13

      [4,] 4 9 14

      [5,] 5 10 15

      Отдельный элемент матрицы можно извлечь, обозначив его положение (номер строки и номер столбца) в квадратных скобках:

      > Матрица2[3,2]

      [1] 8

      Отдельный элемент матрицы можно удалить (указав со знаком минус номер удаляемого элемента, предварительно определив его порядковый номер, считая от начала первой строки первой колонки и до конца последней строки последней колонки), но в результате она становится вектором:

      > Матрица2[-8]

      [1] 1 2 3 4 5 6 7 9 10 11 12 13 14 15

      Отдельный элемент можно вставить в матрицу, указав в квадратных скобках положение (номер строки и номер столбца) куда его нужно вставить и приравняв его к определенному значению:

      > Матрица2[3,2]<– NaN

      > Матрица2

      [,1] [,2] [,3]

      [1,] 1 6 11

      [2,] 2 7 12

      [3,] 3 NaN 13

      [4,] 4 9 14

      [5,] 5 10 15

      NaN– по-английски означает Not-a-Number-«не число». NaN получается в результате: деления 0 на 0, деления 0 на бесконечность, деления бесконечности на бесконечность, умножения 0 на бесконечность, сложения бесконечности с бесконечностью противоположного знака, вычисления квадратного корня отрицательного числа, логарифмирования отрицательного числа, а также в результате всех математических операций с использованием NaN в качестве одного из операндов. В R бесконечность обозначается как Inf. Например, в результате деления Inf на Inf получаем NaN:

      > Inf/Inf

      [1] NaN

      Чтобы NAN в Матрице 2 заменить на нуль нужно ввести такой код:

      > Матрица2[is.na(Матрица2)]<-0

      # по-русски: Матрица2[является. nan (Матрица2)]<-0

      > Матрица2

      [,1] [,2] [,3]

      [1,] 1 6 11

      [2,] 2 7 12

      [3,] 3 0 13

      [4,] 4 9 14

      [5,] 5 10 15

      Отдельный столбец матрицы можно удалить, указав со знаком минус номер удаляемого столбца:

      > Матрица2[, -2]

      #Матрица2[, -2 столбец] – перед запятой вместо номера строки оставляют пустое место

      [,1] [,2]

      [1,] 1 11

      [2,] 2 12

      [3,] 3 13

      [4,] 4 14

      [5,] 5 15

      Отдельный столбец можно вставить в матрицу, указав в квадратных скобках столбец, куда его нужно вставить, и приравняв его к вектору вставляемых значений:

      > Матрица2[, 2]<-16:20

      # Матрица2[, 2 столбец] <-16:20

      > Матрица2

      [,1] [,2] [,3]

      [1,] 1 16 11

      [2,] 2 17 12

      [3,] 3 18 13

      [4,] 4 19 14

      [5,] 5 20 СКАЧАТЬ