如何用np.savetxt将NumPy数组保存为CSV单行格式?
如何用np.savetxt将NumPy数组保存为单行CSV格式
我有一个NumPy数组:
new_data_smooth = [1,2,3,....,2800]
使用以下代码保存该数组:
with open("label.csv", "w+") as f: np.savetxt(f,(new_data_smooth),delimiter=',', fmt='%3f',comments='')
我希望将其保存为单行逗号分隔的.csv文件:
1,2,3,....,2800
但实际得到的是每行一个元素的格式:
1 2 3 ... 2800
请问是否可以使用np.savetxt将数组保存为单行格式?
可以实现,问题出在数组维度上。np.savetxt默认会把一维数组的每个元素单独作为一行输出。要生成单行格式,只需把一维数组转换成二维行向量即可,这里有两种常用方法:
- 用
reshape调整数组维度:
with open("label.csv", "w+") as f: np.savetxt(f, new_data_smooth.reshape(1, -1), delimiter=',', fmt='%3f', comments='')
- 将数组嵌套成列表(手动构造二维结构):
with open("label.csv", "w+") as f: np.savetxt(f, [new_data_smooth], delimiter=',', fmt='%3f', comments='')
两种方式都能让np.savetxt把整个数组作为一行输出,元素之间用逗号分隔。
内容的提问来源于stack exchange,提问作者RobertLink
相关产品推荐
相关产品推荐

