python读取、保存npy文件


npy文件是numpy专用的二进制文件

这里简单展示:

  • 如何利用python读取、保存.npy格式文件
  • 将.npy转化为.csv

1 读取与保存npy文件

import numpy as np

data = np.zeros((3,4))
np.save('data.npy', data)
del data
data = np.load('data.npy')

print('type :', type(data))
print('shape :', data.shape)
print('data :')
print(data)

输出如下:

type : <class 'numpy.ndarray'>
shape : (8, 4)
data :
[[0. 0. 0. 0.]
 [0. 0. 0. 0.]
 [0. 0. 0. 0.]]

2 示例:将npy转化为csv

具体要求如下:

  1. 加载npy格式的数据文件
  2. 给每一列数据添加一个列名
  3. 以csv格式保存数据
import pandas as pd
import numpy as np
import csv

data = np.load('data.npy')
columns = ['A', 'B', 'C', 'D']
with open('data.csv', 'w') as f:
    csv_writer = csv.writer(f)
    csv_writer.writerow(columns)
    csv_writer.writerows(data) 
# 或者
# ------------------------------ #
# data = np.load('data.npy')
# columns = np.array([['A', 'B', 'C', 'D']])
# data = np.concatenate((columns, data), axis=0)
# with open('data.csv', 'w') as f:
#     csv_writer = csv.writer(f)
#     csv_writer.writerows(data)
# ------------------------------ #
df = pd.read_csv('data.csv')
print(df)

输出如下:

     A    B    C    D
0  0.0  0.0  0.0  0.0
1  0.0  0.0  0.0  0.0
2  0.0  0.0  0.0  0.0

注意:

  • writerowwriterows的区别

  • 第二种方法中,columns的类型应该是二维numpy数组,而不是列表。否则在与data合并时,会出现维度错误。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐