开发者

Python中打开查看.npz文件的方法示例

目录
  • 一、导入包
  • 二、数据加载
  • 三、访问NpzFile对象的files属性
  • 四、输出三个数组
  • 五、将 NumPy 数组中的标量值(0维数组)转换为 python 的原生数据类型
  • 六、提取data数组第一行元素
  • 总结 

.np编程客栈z文件是NumPy的压缩存档格式,可以包含多个数组(一个.npz文件包含几个数组)

一、导入包

import numpy as np

二、数据加载

poem = np.load('tang.npz',allow_pickle=True)
  • 使用NumPy的load()函数加载.npz文件:

    • file_path:指定要加载的文件路径

    • allow_pickle=True:允许加载包含Python对象(pickle)的数据

    • 返回一个NpzFile对象(这里赋值给变量poem

三、访问NpzFile对象的files属性

print(poem.files)

本文用例的属编程客栈性为:(说明该对象有三个数组)

Python中打开查看.npz文件的方法示例

四、输出三个数组

ix2word,word2ix,data=poem['ix2word'],poem['wojsrd2ix'],poem['data']
print(ix2word)
print(word2ix)
print(data)

Python中打开查看.npz文件的方法示例

        ix2word和word2ix分别为汉字的索引,作用于data数组里面的索引

五、将 NumPy 数组中的标量值(0维数组)转换为 Python 的原生数据类型

i编程客栈x2word =js ix2word.item()

当你用 np.load('file.npz', allow_pickle=True) 加载数据时:

  • 如果原始数据是 Python 对象(如字典、列表),NumPy 会将其封装为 0维数组

  • 直接尝试索引会报错:IndexError: too many indices for array: array is 0-dimensional, but 1 were indexed

  • 建议用type(ix2word)来检查数据类型

六、提取data数组第一行元素

for i in range(data.shape[1]): #data为二维数组
    print(ix2word[data[1][i]],end=" ")

输出结果为:

</s> </s> <START> 逍 遥 东 城 隅 , 双 树 寒 葱 蒨 。 广 庭 流 华 月 , 高 阁 凝 余 霰 。 杜 门 非 养 素 , 抱 疾 阻 良 䜩 。 孰 谓 无 他 人 , 思 君 岁 云 变 。 官 曹 亮 先 忝 , 陈 躅 慙 俊 彥 。 岂 知 晨 与 夜 , 相 代 不 相 见 。 缄 书 问 所 如 , 詶 藻 当 芬 绚 。 <EOP> 

总结 

到此这篇关于Python中打开查看.npz文件的文章就介绍到这了,更多相关Python打开查看.npz文件内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新开发

开发排行榜