问题:深度学习时,当需要整体修改类型编号时,例如两数据1是car,和1是truck,现想合并数据,那就要挨个打开txt文件修改第一列的类型数字,(这样才能类型不冲突)
手动修改是不可能的,唯有脚本释人心。
不只强势替换,可以筛查替换。
代码环节
import os
for root, dirs, files in os.walk(r"D:/weixin/jk"): # 文件夹路径
for file in files:
# 获取文件name
print(root)
print(file)
root1 = str(root+'/'+file) # 需要转换文件的路径
f = open(root1) # 打开txt文件
line = f.readlines() # 以行的形式进行读取文件
list1 = []
for i,line in enumerate(line):
a = line.split()
b = a[0:5] # 这是选取需要读取/修改的列;txt文件内一共五列
list1.append(b) # 将其添加在列表之中
f.close()
root2 = str('D:/weixin/jl'+'/'+file) # 转换后存放文件夹路径+转换后新的txt文件名称
path_out = root2
with open(path_out, 'w+') as f_out:
for i in list1:
if i[0] == '1' : #判断第一列数字
i[0]='2' # 替换所需数字
fir = i[0]
sec = i[1] # 第二、三、四、五列内容保持不变
third = i[2]
fourth = i[3]
fifth = i[4]
f_out.write(str(fir) + ' ' + str(sec) + ' ' + str(third) + ' ' + str(fourth) + ' ' + str(fifth) + '\n') # 把前两列写入新的txt文件