当前位置:首页 >> 脚本专栏

python 实现两个npy档案合并

我就废话不多说了,大家还是直接看代码吧~

 
old_record=numpy.load('exist.npy')
temp_record=[]
 
path = os.getcwd()+"\\database\\new"  #获取当前路径
for root,dirs,files in os.walk(path):  #遍历统计
	for each in files: 
		url=path+"\\"+each
		...
		temp_record.append(temp)
 
numpy.save('temp.npy',temp_record) 
temp=numpy.load('temp.npy')
 
new_record=numpy.append(old_record,temp)
numpy.save('exist.npy',new_record) 
 

补充知识:Python批量处理文件 将多个文件合并

需求:把一个文件夹下的多个csv文件合并成一个文件,文件的格式是相同的,只是按照不同的月份分成了多个文件,现将文件夹下的文件进行合并

import pandas as pd 
import os 
Folder_Path = 'C:\\Users\\dell\\雾霾预测\\data\\河北省'     #要拼接的文件夹及其完整路径,注意不要包含中文 
SaveFile_Path = 'C:\\Users\\dell\\雾霾预测\\data'    #拼接后要保存的文件路径 
SaveFile_Name = '河北省201701-201712.csv'       #合并后要保存的文件名 

#修改当前工作目录 
os.chdir(Folder_Path) 
#将该文件夹下的所有文件名存入一个列表 
file_list = os.listdir() 

#读取第一个CSV文件并包含表头 
df = pd.read_csv(Folder_Path +'\\'+ file_list[0]) #编码默认UTF-8,若乱码自行更改

#将读取的第一个CSV文件写入合并后的文件保存 
df.to_csv(SaveFile_Path+'\\'+ SaveFile_Name,encoding="utf_8_sig",index=False) 

#循环遍历列表中各个CSV文件名,并追加到合并后的文件 
FileStart = 1
FileEnd = len(file_list)
for i in range(FileStart,FileEnd): 
  df = pd.read_csv(Folder_Path + '\\'+ file_list[i]) 
  df.to_csv(SaveFile_Path+'\\'+ SaveFile_Name,encoding="utf_8_sig",index=False, header=False, mode='a+')

在读取的时候可能会出现中文乱码的问题,有可能是gbk编码这时候再读取文件的时候需要加上编码格式

df = pd.read_csv(Folder_Path +'\\'+ file_list[0],encoding = 'gbk')

以上这篇python 实现两个npy档案合并就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。