numpy 保存/加载损坏数组

2023-12-24

我正在尝试保存一个大的 numpy 数组并重新加载它。使用numpy.save and numpy.load,数组值已损坏/更改。数组预保存和加载后的形状和数据类型是相同的,但加载后数组的绝大多数值都归零。 数组是 (22915,22915),值是 float64,将 3.94 GB 作为 .npy 文件,数据条目平均约为 0.1(不是可以合理转换为零的微小浮点数)。我正在使用 numpy 1.5.1。

任何关于为什么会发生这种腐败的帮助将不胜感激,因为我不知所措。下面是一些代码,提供了上述主张的证据。

In [7]: m
Out[7]: 
      array([[ 0.     ,  0.02023,  0.00703, ...,  0.02362,  0.02939,  0.03656],
             [ 0.02023,  0.     ,  0.0135 , ...,  0.04357,  0.04934,  0.05651],
             [ 0.00703,  0.0135 ,  0.     , ...,  0.03037,  0.03614,  0.04331],
             ..., 
             [ 0.02362,  0.04357,  0.03037, ...,  0.     ,  0.01797,  0.02514],
             [ 0.02939,  0.04934,  0.03614, ...,  0.01797,  0.     ,  0.01919],
             [ 0.03656,  0.05651,  0.04331, ...,  0.02514,  0.01919,  0.     ]])
In [8]: m.shape
Out[8]: (22195, 22195)

In [12]: save('/Users/will/Desktop/m.npy',m)

In [14]: lm = load('/Users/will/Desktop/m.npy')

In [15]: lm
Out[15]: 
       array([[ 0.     ,  0.02023,  0.00703, ...,  0.     ,  0.     ,  0.     ],
              [ 0.     ,  0.     ,  0.     , ...,  0.     ,  0.     ,  0.     ],
              [ 0.     ,  0.     ,  0.     , ...,  0.     ,  0.     ,  0.     ],
              ..., 
              [ 0.     ,  0.     ,  0.     , ...,  0.     ,  0.     ,  0.     ],
              [ 0.     ,  0.     ,  0.     , ...,  0.     ,  0.     ,  0.     ],
              [ 0.     ,  0.     ,  0.     , ...,  0.     ,  0.     ,  0.     ]])
In [17]: type(lm[0][0])
Out[17]: numpy.float64

In [18]: type(m[0][0])
Out[18]: numpy.float64

In [19]: lm.shape
Out[19]: (22195, 22195)

这是一个已知的issue http://projects.scipy.org/numpy/ticket/1505(请注意,该链接针对 numpy 1.4)。如果你确实无法升级,我的建议是尝试以不同的方式保存(savez、savetxt)。如果 getbuffer 可用,您可以尝试直接写入字节。如果所有其他方法都失败了(并且您无法升级),您可以非常轻松地编写自己的保存函数。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

numpy 保存/加载损坏数组 的相关文章

随机推荐

  • 使用 Powershell 脚本进行静默安装

    我正在尝试使用 PowerShell 无提示脚本安装一个客户端软件 下面是我创建的脚本 它不起作用并抛出如下错误 无法验证参数 ArgumentList 上的参数 参数为 null 空或参数集合的元素包含 null 值 提供一个不包含任何空
  • JavaScript DOM 对象到 jQuery 对象

    如何将 JavaScript DOM 对象转换为 jQuery 对象 tr function changeStatus myObject XXX removeClass XXX应该写什么 我知道我可以使用 id 和 id 选择器来解决问题
  • 缺少 Style.Triggers 和 x:Type。为什么?

  • 向服务器发送视频和音频流

    我正在尝试开发一个系统 其中有两个客户端可以通过服务器从浏览器相互视频聊天 第一个客户端将其视频流发送到服务器 服务器将其发送到第二个客户端 此外 服务器将客户端的流保存为视频文件 我使用了这个 WebRTC 示例 https github
  • 平台工具集 v140 和 v140_xp 之间有什么区别?

    以结尾的平台工具集之间有什么区别 xp以及那些没有的 例如 v140 vs v140 xp 为什么没有以以下结尾的工具集 vista or 7 当我在 Windows 7 上编译程序时v140工具集 它可以在 Windows XP Vist
  • 禁用 nginx 日志

    如何禁用 nginx 日志记录而不出现严重错误 error log off 不起作用 只是创建文件名 off 真的 不是开玩笑 error log dev null 不支持 操作系统 freebsd 我需要禁用子域的日志记录 http wi
  • 计算数组的位/字节大小

    我有一个 Javascript 数组 其中有很多子数组 计算数组拥有多少位 字节的最佳 最简单方法是什么 我要将数组发送到我的 PHP 服务器 它只能有 5kB 大 有没有本地方法 我对位不太熟悉 如果我理解正确的话 1 个字符适合 8b
  • Python:并行执行cat子进程

    我正在运行几个cat zgrep远程服务器上的命令并单独收集其输出以进行进一步处理 class MainProcessor mp Process def init self peaks array super MainProcessor s
  • 如何查找 Qt SDK 中使用的当前 QtWebKit 版本?

    我想知道 Qt SDK 中使用的 QtWebKit 模块的版本 谁能帮我吗 1 QTWEBKIT VERSION STR 宏给出 QtWebKit 版本 2 qWebKitVersion 给出使用的 webkit 版本
  • 如何将写入流 1 的内容通过管道传送到流 2 中?

    这是我的场景 producer WriteStream stream consumer ReadStream stream 我想要的东西允许由生成的字节producer将逐步转移至consumer 我可以将所有内容写入MemoryStrea
  • 如何将 Hashmap> 膨胀到 Recyclerview 中

    我希望键字符串必须充当标题 并且列表必须在该映射键下膨胀RecyclerView 谢谢你的帮助 public class Adapter extends RecyclerView Adapter
  • MultiFieldQueryParser 中的提升因子

    我可以使用不同的因素来提升 MultiFieldQueryParser 中的不同字段吗 另外 我可以分配给字段的最大提升因子值是多少 万分感谢 埃德 MultiFieldQueryParser有一个接受增强图的 构造函数 1 你可以像这样使
  • WUA API 无法卸载更新

    我在使用 Windows Update Agent WUA API 时遇到问题 每当我尝试使用卸载更新时IUpdateInstaller IsForced True IUpdateInstaller BeginUninstall 我越来越W
  • Angular 2 Jasmine 测试,加载 app.component.ts 中的所有组件?

    我正在开发一个小型测试应用程序 以更好地学习 Angular 2 和 Angular 2 中的单元测试 来自react Jest 背景 将所有组件都包含在 app component ts 中感觉很奇怪 这就是我到目前为止所拥有的组件层次结
  • 如何通过javascript/html5播放wav音频字节数组?

    我正在使用以下方法来播放包含 wav 数据的字节数组 该函数是从 GWT 项目调用的 这个函数会播放声音 但听起来像是某种地狱怪物 采样率绝对是正确的 声音是由 neospeech 生成的 并且我已经尝试了 numberOfSamples
  • C++11 中返回本地值的最佳方式

    在过去 如果我想要一个对象的字符串表示A 我会写一些带有签名的东西void to string const A a string out 以避免额外的副本 这是否仍然是 C 11 中的最佳实践 包括移动语义等 我读过一些关于其他上下文的评论
  • 混合应用程序中的人脸识别:Apache Cordova

    我想使用 apache Cordova 创建一个混合应用程序 我想在其中集成人脸识别 API 最好是https www microsoft com cognitive services en us face api https www mi
  • microsoft oidc id 令牌的 oid 声明是否与我从 microsoft graph api 获得的 id 相同?

    关于 oid 索赔 https learn microsoft com en us azure active directory develop id tokens payload claims从 azureAD 的访问令牌 ID 令牌解码
  • 组件本地状态未使用反应自定义挂钩更新

    我刚刚开始使用反应钩子 在使用自定义钩子时遇到了一些问题 这可能是缺乏理解 但这就是我正在尝试的 我的自定义钩子 import React useState from react export const useValidateConten
  • numpy 保存/加载损坏数组

    我正在尝试保存一个大的 numpy 数组并重新加载它 使用numpy save and numpy load 数组值已损坏 更改 数组预保存和加载后的形状和数据类型是相同的 但加载后数组的绝大多数值都归零 数组是 22915 22915 值