Порядок Fortran в NumPy
В порядке Fortran элементы идут столбец за столбцом. Соседние ячейки одного столбца лежат в памяти рядом. Такой порядок часто встречается в вычислениях с матрицами.
Признак непрерывности в этом порядке
лежит в flags под ключом
F_CONTIGUOUS. Создадим таблицу
специально в порядке Fortran и
проверим флаг:
import numpy as np
table = np.asfortranarray(
np.array([[1, 2, 3], [4, 5, 6]])
)
print(table.flags['F_CONTIGUOUS']) # выведет True
Обычная таблица из списка строк чаще непрерывна в порядке C, а не F. Сравним оба флага у такой таблицы:
import numpy as np
table = np.array([[1, 2], [3, 4]])
print(table.flags['C_CONTIGUOUS']) # выведет True
print(table.flags['F_CONTIGUOUS']) # выведет False
Создайте таблицу [[1, 0], [0, 1]]
в порядке Fortran и выведите,
помечена ли она как непрерывная
в этом порядке.
Создайте таблицу из двух строк по два столбца из единиц и выведите, непрерывна ли она в порядке Fortran.