NumPy-读写文件「建议收藏」

NumPy-读写文件「建议收藏」读写文件NumPy文件读写主要有二进制的文件读写和文件列表形式的数据读写两种形式(1)save函数是以二进制的格式保存数据。  格式:  np.save("./save_arr",arr1)(2)load函数是从二进制的文件中读取数据。  格式:  np.load("./save_arr.npy")(3)savez函数可以将多个数组保存到一个文件中。  …

大家好,又见面了,我是你们的朋友全栈君。

读写文件

NumPy 文件读写主要有二进制的文件读写和文件列表形式的数据读写两种形式

(1) save 函数是以二进制的格式保存数据。   格式:   np.save (“./save_arr “, arr1)
(2) load 函数是从二进制的文件中读取数据。   格式:   np.load(“./ save_arr.npy”)
(3) savez 函数可以将多个数组保存到一个文件中。   格式:   np.savez(‘./savez_arr’,arr1,arr2)
(4) 存储时可以省略扩展名,但读取时不能省略扩展名

读取文本格式的数据(TXT CSV 格式)

(1) savetxt 函数是将数组写到某种分隔符隔开的文本文件中。   格式:   np.savetxt(“./arr.txt”, arr, fmt=”%d”, delimiter=”,”)
## fmt=”%d”表示保存为整数,delimiter=”,”表示用’,’隔开。
(2) loadtxt 函数执行的是把文件加载到一个二维数组中。   格式:   np.loadtxt(“./arr.txt”,delimiter=”,”)
(3) genfromtxt 函数面向的是结构化数组和缺失数据。   格式:   np.genfromtxt(“./arr2.txt”, delimiter = “,”)

 

二进制文件读写

(1)  save() 函数是以二进制的格式保存数据;   load() 函数是从二进制的文件中读取数据

import numpy as np

arr1 = np.arange(40).reshape((5,8))
print(arr1)

# 保存二进制文件,npy格式是一个数组的文件保存
np.save('./save_arr',arr1)  

arr3 = np.load('./save_arr.npy')  # 读取二进制文件
print(arr3)

 

(2)  savez() 函数可以将多个数组保存到一个文件中

import numpy as np

arr1 = np.arange(40).reshape((5,8))
arr2 = np.arange(1,10,1)
# print(arr1)
# print(arr2)

np.savez('./savez_arr',arr1,arr2)    # 保存二进制文件,npz多个数组的文件保存
load_data = np.load('./savez_arr.npz')  # 读取二进制文件
print(load_data)
print(type(load_data))

# 可遍历文件中的键值(也可以通过开启断点来获取)
# for i,k in load_data.items():
#     print(i,k)
# 结果: 
# arr_0 [[ 0  1  2  3  4  5  6  7]
#     [ 8  9 10 11 12 13 14 15]
#     [16 17 18 19 20 21 22 23]
#     [24 25 26 27 28 29 30 31]
#     [32 33 34 35 36 37 38 39]]
# arr_1 [1 2 3 4 5 6 7 8 9]

print(load_data['arr_0'])
print(load_data['arr_1'])

 

文本文件读写

(1)  savetxt() 函数是将数组写到某种分隔符隔开的文本文件中;   loadtxt() 函数执行的是把文件加载到一个二维数组中

import numpy as np

arr = np.arange(0,9,1).reshape(3,-1) # -1的意思是根据行数自动匹配列数
print(arr)
# 结果:
# [[0 1 2]
#  [3 4 5]
#  [6 7 8]]

# fmt='%d'表示保存为整数,delimiter=","表示用','隔开
np.savetxt('arr.txt',arr,fmt='%d',delimiter=',')    # 保存
load_txt = np.loadtxt('arr.txt',delimiter=',')  # 读取
print(load_txt)
# 结果:
# [[ 0.  1.  2.]
#  [ 3.  4.  5.]
#  [ 6.  7.  8.]]

 

(2)  genfromtxt 函数面向的是结构化数组和缺失数据(基本操作)

import numpy as np

arr = np.arange(0,9,1).reshape(3,-1) # -1的意思是根据行数自动匹配列数
# print(arr)
# 结果:
# [[0 1 2]
#  [3 4 5]
#  [6 7 8]]

# fmt='%d'表示保存为整数,delimiter=","表示用','隔开
np.savetxt('./arr2.txt',arr,fmt='%d',delimiter=',')    # 保存
# skip_header从哪行开启读取
load_txt = np.genfromtxt('./arr2.txt',delimiter=',',skip_header=1)  # 读取
print(load_txt)
# 结果:
# [[ 3.  4.  5.]
#  [ 6.  7.  8.]]

# 二维数组切片方式
print(load_txt[1:2,0:3])
# 结果:
# [[ 6.  7.  8.]]

print(load_txt[0:3,0])
# 结果: [ 3.  6.]

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/140580.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux下完全卸载神通数据库_linux如何删除数据库

    linux下完全卸载神通数据库_linux如何删除数据库停止oracle数据库服务1.切换到oracle用户下执行sqlplus/assysdba命令进入SQL命令行2.然后再执行shutdownimmediate;3.退出SQL命令行[root@i-5608690Edatabase]#su-oracle-bash-4.1$sqlplus/assysdbaSQL*Plus:Release…

    2022年8月30日
    3
  • 机房效果图制作|简易制作教程赘述

    机房效果图制作|简易制作教程赘述首先看图,这个图是人视角度,两侧显露出来的空间很大,注重表现的是两侧的机柜,包含列头柜,精密空调及上方的冷通道。第一步:客户肯定得提供图纸类的资料,如CAD图纸,或是手绘的平面布置图等。这里面需要包含机房的数量,排列组合为止或是模块化设置。第二步:拿到资料,和客户沟通之后,首先要明白客户表现的是什么效果,哪个地方是侧重点等。第三步:沟通完了就需要进行下一步,就是如果客户提供了CAD图纸

    2022年5月5日
    79
  • directx11是啥(polite什么意思)

    电脑爱好者朋友通常会在某款游戏最低配置要求以及某些显卡上看到有DirectX字样,一般DirectX有:Direct9.0、Direct10(简称DX9、DX10)以及时下最新的Direct11(简称DX11),很多朋友对于一些游戏中最低要求的DirectX版本很疑惑,也不知道为什么越来越多游戏都需要Direct10以上,甚至Direct11版本要求。那么DX11是什么呢?又代表着什么含…

    2022年4月14日
    79
  • 大学最应该学习的 5 门课, 毕业后大厂 Offer 直接拿到手软!「建议收藏」

    大学最应该学习的 5 门课, 毕业后大厂 Offer 直接拿到手软!「建议收藏」时间如白驹过隙,我竟然已经是一名拥有13年编程经验的老油条了!有些自豪,因为自己从大一就开始学习的Java语言依然坚挺,几乎是编程语言中的霸主了;但也有些遗憾,大学的时候没有把这些计算机基础课程学好,有些甚至没有学,导致工作后有很长一段时间蛮吃力的,全靠近些年“废寝忘食”的补课,才有所好转。希望学弟学妹们,能从我这些经验中获得一些启发,少走一些弯路。1)计算机编程的基石——数据结构与算法2)计算机编程语言的母胎——C语言3)计算机组成原理4)计算机操作系统5)计算机网络一、数据结构

    2022年4月29日
    59
  • datagrip激活码2021_最新在线免费激活

    (datagrip激活码2021)2021最新分享一个能用的的激活码出来,希望能帮到需要激活的朋友。目前这个是能用的,但是用的人多了之后也会失效,会不定时更新的,大家持续关注此网站~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月26日
    128
  • js字的数目的计算方法(与word计算公式为)

    js字的数目的计算方法(与word计算公式为)

    2022年1月2日
    56

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号