scikit-learn学习笔记(二)load_files加载自己的文件

这里不讨论加载常用的公用数据集,而是讨论加载自己的原始数据(即,实际中遇到的数据)

sklearn.datasets. load_files ( container_pathdescription=Nonecategories=None, load_content=Trueshuffle=Trueencoding=Nonedecode_error='strict'random_state=0 ) [source]

加载文本文件存储的数据集,其中不同类别的文件存放路径为

container_folder/
category_1_folder/
file_1.txt file_2.txt ... file_42.txt
category_2_folder/
file_43.txt file_44.txt ...

其中,子文件夹(category_1_folder)的名字区别,作为监督学习的标签区别。至于每个文件的具体命名,随便。



上面的参数只解释container_path,load_content=True,encoding=None

container_path:“container_folder”的路径。

load_content=True:是否真的把文件中的内容加载到内存中,选择true就是了。

encoding=Nonestring or None (default is None),是否解码文件中的内容(主要针对图片、视频或其他二进制文件,而非文本内容);如果不是None,那么在load_content=True的情况下,就会解码文件中的内容。注意,当前文本文件的编码方式一般为“utf-8”。如果不指明编码方式(encoding=None),那么文件内容将会按照bytes处理,而不是unicode处理,这样模块“sklearn.feature_extraction.tex”中的很多函数就不能用了。


返回值:data : Bunch

Dictionary-like object。我们感兴趣的有:

data:原始数据,格式参考下图。

filenames:每个文件的名字

target:类别标签(从0开始的整数索引)

target_names:类别标签(数字)的具体含义(由子文件夹的名字category_1_folder决定)


实例:

data_folder/
category_1_folder/
1.txt file_2.txt 
category_2_folder/

3.txt 4.txt 

  1. from sklearn import datasets  
  2. rawData = datasets.load_files("data_folder")  
  3.   
  4. rawData  
  5. Out[10]:   
  6. {'DESCR'None,  
  7.  'data': ['5 start, \r\ni like this book.',  
  8.   '4 start, \r\nthis book is good,\r\ni like it.',  
  9.   "1 start, \r\npretty bad, don't like it at all.",  
  10.   "2 start, \r\nwe don't like so much."],  
  11.  'filenames': array(['data_folder\\positive_folder\\1.txt',  
  12.         'data_folder\\positive_folder\\2.txt',  
  13.         'data_folder\\negative_folder\\4.txt',  
  14.         'data_folder\\negative_folder\\3.txt'],   
  15.        dtype='|S33'),  
  16.  'target': array([1100]),  
  17.  'target_names': ['negative_folder''positive_folder']}  
  18.   
  19. rawData.data  
  20. Out[11]:   
  21. ['5 start, \r\ni like this book.',  
  22.  '4 start, \r\nthis book is good,\r\ni like it.',  
  23.  "1 start, \r\npretty bad, don't like it at all.",  
  24.  "2 start, \r\nwe don't like so much."]  
  25.   
  26. rawData.target  
  27. Out[12]: array([1100])  
  28.   
  29. rawData.filenames[rawData.target[0]]  
  30. Out[13]: 'data_folder\\positive_folder\\2.txt'


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Soyoger

听说打赏的都进了福布斯排行榜。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值