读写各类文件
1.npy
读取
npy是python生成的一种文件,直接双击大多数情况会显示未响应,
即使顺利点开,也会出现乱码。
需要np.load
import numpy as np
data = np.load('emg_x.npy')
结果展示
如果文件很大的话,加一行np.set_printoptions(threshold=sys.maxsize)
写入
以一个简单的2*3的全1矩阵为例,保存为.npy,然后读取进行验证
NPY = np.ones([2, 3])
np.save("2_3.npy",NPY)
valid = np.load('2_3.npy')
结果展示
2.mat
读取
import scipy.io as sio
All_flow_dir = sio.loadmat('reflective_flow.mat')
All_flow = All_flow_dir['All_flow']#这里是因为我的.mat保存的是键值对
结果展示
依然以一个简单的2*3的全1矩阵为例,保存为.mat,然后读取进行验证
写入
NPY = np.ones([2, 3])
sio.savemat('NPY.mat', {'NPY': NPY})
Vaild = sio.loadmat('NPY.mat')['NPY']
结果展示
3.txt
读取
方法1一次性全读出来
with open('data.txt', encoding='utf-8', mode='r') as f:
data = f.read()
print(data)
方法2 一行一行的读
data = open("data.txt", encoding='utf-8', mode='r')
for data in data.readlines():
data = data.strip()
print(data)
结果展示
写入
“w”表示write,当不存在该文件时,会自动创建
with open('try.txt','w') as f:
f.write('trying')
4.xlsx
读取
import pandas as pd
data = pd.read_excel('data.xlsx')
如果环境里没有pandas这个包,在Terminal 输入
pip install pandas
这个时候可能会出现错误“ImportError: Missing optional dependency ‘xlrd’. Install xlrd >= 1.0.0 for Excel support Use pip or conda to install xlrd.”
只需要按照提示
pip install xlrd
接着可能又会出现报错“xlrd.biffh.XLRDError: Excel xlsx file; not supported”,这个是因为版本过高导致的,降低一下版本
pip install xlrd==1.2.0
结果展示
关于data的详细数据,双击红色方框即可看到
写入
写入以pandas方法为例
import numpy as np
import pandas as pd
NPY = np.ones([2, 3])
data = pd.DataFrame(NPY)
excel_xlsx = pd.ExcelWriter('try.xlsx')
data.to_excel(excel_xlsx, 'sheet1')
excel_xlsx.save()
excel_xlsx.close()
结果展示