在深度学习或者机器学习的时候,常常需要对数据进行整理和分类,最常见的是通过对数据路径和标签写入

到一个整合的txt或者csv文件中,训练进行读取。

  1. #coding=utf-8
  2. #!/usr/bin/env python
  3. import sys
  4. import os.path
  5.  
  6. # This is a tiny script to help you creating a CSV file from a face
  7. # database with a similar hierarchie:
  8. #
  9. # .
  10. # |-- README
  11. # |-- s1
  12. # | |-- 1.pgm
  13. # | |-- ...
  14. # | |-- 10.pgm
  15. # |-- s2
  16. # | |-- 1.pgm
  17. # | |-- ...
  18. # | |-- 10.pgm
  19. # ...
  20. # |-- s40
  21. # | |-- 1.pgm
  22. # | |-- ...
  23. # | |-- 10.pgm
  24. #
  25.  
  26. if __name__ == "__main__":
  27.  
  28. if len(sys.argv) != 3:
  29. print "usage: create_csv <base_path>"
  30. sys.exit(1)
  31.  
  32. BASE_PATH=sys.argv[1]
  33. SEPARATOR=";"
  34. fh = open(sys.argv[2], 'w')
  35.  
  36. label = 0
  37. for dirname, dirnames, filenames in os.walk(BASE_PATH):
  38. for subdirname in dirnames:
  39. subject_path = os.path.join(dirname, subdirname)
  40. for filename in os.listdir(subject_path):
  41. abs_path = "%s/%s" % (subject_path, filename)
  42. print "%s%s%d" % (abs_path, SEPARATOR, label)
  43. fh.write(abs_path)
  44. fh.write(SEPARATOR)
  45. fh.write(str(label))
  46. fh.write("\n")
  47. label = label + 1
  48. fh.close()

  调用方式如下

  

  1. python create.py d:/test/jaf d:/a.csv

  生成文件结果如下图所示

  通过替换可以将斜杠调整一致

Python创建cvs文件,包含标签和图片数据的更多相关文章

  1. Python读取不同文件夹下的图片并且分类放到新创建的训练文件夹和标签文件夹

    在深度学习的训练时,经常会碰到训练的样本数据集和标签数据集是在一个文件夹中,这个时候我们就不得不进行一些数据的预处理和文件的分类,例如将训练(training data)数据集和标签数据集(label ...

  2. 【Python脚本】Python创建删除文件-----------我的第一个Python脚本

    Python相对C++和Java来说,是解释性语言,非常适合来编写脚本. 很久之前就开始学习Python的语法了,今天写了第一个Python的脚本,来简化我的一些日常工作. 我平时学习的时候喜欢新建一 ...

  3. Python创建删除文件

    Python代码如下: import os directory = "E:\\学习日志\\" os.chdir(directory) # 改变当前工作目录 cwd = os.get ...

  4. Python 创建递归文件夹

    # 创建递归文件夹 def createfiles(filepathname): try: os.makedirs(filepathname) except Exception as err: pri ...

  5. python之从文件中按行读取数据

    #!/usr/bin/env python3 # -*- coding: utf-8 -*- __author__ = 'jiangwenwen' # 从文件中按行读取数据 file = open(& ...

  6. 利用python 创建XML文件

    #coding=utf-8 from xml.etree import ElementTree import pdb def printNodeInfo(node): #node.tag 标签名称 # ...

  7. python 的头文件包含问题

    一个python项目中一个文件需要引用另一个文件中的类,遇到的几个问题,总结如下: 0x01 情况一:在同一目录下 project |--a.py |--b.py |--main.py 在main.p ...

  8. python 把一文件包含中文的字符写到另外文件乱码 UnicodeDecodeError: 'gbk' codec can't decode byte 0xac in position

    报错的代码是: file2 = open('target.txt','w')for line in open('test.txt'): file2.write(line)原因:文件编码不一致导致解决方 ...

  9. python新建txt文件,并逐行写入数据

    #coding=utf-8 txtName = "codingWord.txt"f=file(txtName, "a+")for i in range(1,10 ...

随机推荐

  1. Javascript 事件对象(四)一个事件绑定多个不同的函数

    给一个对象绑定多个事件处理函数: <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-T ...

  2. formValidator 表单验证

    作为一名程序员,在解决工作中遇到问题之后,做一些总结是有必要的,既方便总结温习相关知识点,也为广大的程序员提供了一些工作经历,给予同行一面明鉴. 首先,众所周知的,我们需要引用js类库: eg:< ...

  3. css技巧收集

    1. 使用 :not() 为导航添加/取消边框 传统的方法为导航栏添加边框: /* add border */ .nav li { border-right: 1px solid #666; } /* ...

  4. 5种io模式

    1)阻塞I/O(blocking I/O) 发起请求,等待数据报准备好,拷贝数据,数据返回指令 应用程序调用一个IO函数,导致应用程序阻塞,等待数据准备好. 如果数据没有准备好,一直等待….数据准备好 ...

  5. setInterval和clearInterval

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  6. Document树的解析方法

    一.本次总结用到的xml文本 1.    <?xml version="1.0" encoding="UTF-8" standalone="no ...

  7. netezza 数据库 取 季初 季末 时间

    -- 取季初那一天 select date_trunc( 'quarter',cast('20150820' as date)) -- 取季末那一天 select add_months(date_tr ...

  8. const成员变量初始化总结

    const可以用来声明常量也就是说他的值不能被修改: const成员必须在定义的时候同时初始化,不能进行赋值 如 const int a:a的值不能修改,不能给它赋值,如何才能让它一开始就拥有一个值? ...

  9. linux下安装nodejs

    之前安装过windows下的node,感觉还是很方便的,不成想今天安装linux下的坑了老半天,特此记录. 1. 下载node.js,官方有提供源码版本和编译版的,方便起见我使用编译版的,下载后解压缩 ...

  10. java中的反射,知道类名创建类,还可以设置私有属性的值

    刚刚学到了反射,感觉反射的功能好强大,所以想写篇博客记录下自己的学习成果. 利用反射来创建对象. Class c1=Class.forName("test.Person");//通 ...