python - Python numpy 数组切片不是 Fortran 连续的
问题描述
我定义了一个 Fortran 连续数组:
import numpy as np
hp = np.zeros([number_fragments, max(length_fragments_list), 6], order='F')
此数组的切片不是 Fortran 连续的。我该如何解决?
hn = hp[0,0:Length-1,:]
hn.flags
C_CONTIGUOUS : False
F_CONTIGUOUS : False
also
hn = hp[0,0:Length-1,:].copy()
hn.flags
C_CONTIGUOUS : True
F_CONTIGUOUS : False
切片后如何轻松获得 Fortran 连续数组?
解决方案
np.asfortranarray
您可以在切片上应用 numpy 函数来强制执行它,例如:
np.asfortranarray(hp[0,0:Length-1,:].copy())
推荐阅读
- xml - 通过命令行替换xml上的属性
- python - 如何在 aa matplotlib 子图中删除某些 xticks 或 yticks?
- java - Java 创建对象时的内存消耗
- javascript - Django:在 javascript 函数中更改字体颜色
- java - java -version 是否告诉我有关 JRE 或 JDK 的信息?
- javascript - Node JS Puppeteer headful Browser 不启动
- c - 在 C 程序中打印日文字符
- javascript - 如何为 Reactjs cookie 添加监听器
- java - 使用 aws java sdk 创建 mediaconvert 作业时出现 ForbiddenException
- java - Android setText问题与editText错误