在学习机器学习实战的时候,发现网上下载的数据集存在问题,编码格式不对,但是文件夹有点多操作起来不太方便,所以这里就写了一个脚本来批量修改txt文件的编码格式
__author__ = 'sym'
__date__ = '19-11-26'
import os
def repair(rootDir):
for root,dirs,files in os.walk(rootDir):
for file in files:
p_rootdir = os.path.join(root, file)
print(p_rootdir)
os.system("iconv %s -f US-ASCII -t UTF-8 -o %s" % (p_rootdir,p_rootdir)) # 这里使用了shell命令
for dir in dirs:
repair(dir)
if __name__ == '__main__':
rootdir = '/home/sym/PycharmProjects/machinelearninginaction/Ch04/email/spam' # 指定要修改权限的目录
repair(rootdir)
其中for root,dirs,files in os.walk(rootDir):这一句作用是遍历文件,各变量含义如下:
| rootDir | 代表需要遍历的根文件夹 |
| root | 表示正在遍历的文件夹的名字(根/子) |
| dirs | 记录正在遍历的文件夹下的子文件夹集合 |
| files |
记录正在遍历的文件夹中的文件集合 |
找到文件后批量使用Shell命令即可。
本文介绍了一种使用Python脚本批量修改TXT文件编码格式的方法,解决了机器学习实战中遇到的数据集编码问题。通过遍历指定目录下的所有文件夹和文件,利用iconv命令将US-ASCII编码转换为UTF-8编码。
1716

被折叠的 条评论
为什么被折叠?



