当前位置: 首页 > wzjs >正文

琳琅秀网站建设网络优化大师下载

琳琅秀网站建设,网络优化大师下载,一个商城网站开发周期,网站现状如何分析一、概述 数据集加载(Dataset Loading)是机器学习、自然语言处理(NLP)等领域中的一个重要步骤,指的是将外部数据(如文件、数据库、网络接口等)加载到程序中,以便进行后续处理、分析…

一、概述

数据集加载(Dataset Loading)是机器学习、自然语言处理(NLP)等领域中的一个重要步骤,指的是将外部数据(如文件、数据库、网络接口等)加载到程序中,以便进行后续处理、分析或模型训练。数据集加载通常是数据预处理的第一步,之后可能还会进行数据清洗、转换等处理。

(一)目的

数据集加载的主要目的是获取数据,将存储在外部来源(如文本文件、CSV文件、数据库、API等)中的信息导入到程序中,转换为适合处理的格式。

(二)步骤

(1)选择数据源

  • 数据可以来自文件系统(如 .csv、.txt 文件)或远程数据库/API。
  • 选择合适的数据源和格式(例如,CSV 格式适合结构化数据,JSON 格式适合层级数据)。

(2)加载数据

  使用适当的库和函数将数据从文件或数据库中加载到内存中。常见的库包括:

  • pandas:适用于 CSV、Excel、JSON 等格式的数据。(详见 库学习02-Pandas库)
  • open():适用于文本文件。 (本文使用)
  • sqlite3:适用于从 SQLite 数据库加载数据。

(3)数据转换和格式化

  • 数据加载后,可能需要将数据转换成合适的格式。例如,转换字符串为数值、日期格式化等。
  • 可能需要将数据从列表转换为 DataFrame(例如使用 pandas),或者从字典转换为列表等。

二、数据集加载

目的:从一个文件夹中读取所有文本文件,提取每个文件的标签(从文件名中获取),然后将文件内容进行分词处理,并保存并返回为训练数据和标签。

(一)从文件夹读取文件列表

数据存储在不同的文本文件中,每个文件名中包含类别标签(如“question_1.txt"表示类别 1)。

这里定义一个读取文件列表的函数,作用是 遍历指定路径(source_path)下的所有文件,并返回两个列表:一个是文件名列表 file_name,另一个是文件路径列表 file_path_list。(os.walk函数的用法详见库学习03-os库(持续更新))

def get_file_list(source_path):# 从文件夹读取到文件列表file_path_list = []file_name = []walk = os.walk(source_path)# print(walk)for root, dirs, files in walk:for name in files:filepath = os.path.join(root, name)file_name.append(name)file_path_list.append(filepath)# print(name)# print(filepath)# print("---")return file_name, file_path_list

(二) 遍历文件列表,获取数据

2.1 从文件名中用正则获取到标签

dir_name, file_name = os.path.split(file_item)
label_str = re.sub(r'\D', "", file_name)
  1. os.path.split 函数的用法详见库学习03-os库(持续更新) 
  2. label_str = re.sub(r'\D', "", file_name)

     提取标签:这一行通过正则表达式从文件名中提取出标签。具体来说:

  • r'\D' 是一个正则表达式,表示“非数字字符”。
  • re.sub(r'\D', "", file_name) 会将 file_name 中所有非数字字符替换为空字符串,从而提取出文件名中的数字部分。
  • 例如,如果 file_name = "file12.txt",则label_str = "12"

2.2 遍历每一行标签获取数据

        if label_str.isnumeric(): # 判断是否是数字label = int(label_str)with (open(file_item, "r", encoding="utf-8")) as file:lines = file.readlines()for line in lines:# print(line)# 分词word_list = list(jieba.cut(line))train_x.append(" ".join(word_list))train_y.append(label)

代码重点解析:

文件操作块:

with open(file_item, "r", encoding="utf-8") as file:# 在这里可以操作文件,读取文件内容等
  •  with 是 Python 中的上下文管理器(Context Manager)。它通常用于管理需要显式清理的资源,比如文件、数据库连接、网络请求等。一大好处是它会自动管理资源,无需你显式地调用 file.close() 来关闭文件,减少了因忘记关闭文件而导致的资源泄露问题。
  •  as file:as file 是 with 语句中的一个关键部分,它为文件对象起了个别名 file。你可以在 with 语句块内部使用 file 来操作文件。

jieba分词:

word_list = list(jieba.cut(line))
train_x.append(" ".join(word_list))
train_y.append(label)
  • jieba分词详见 jieba分词
  • train_x存储每行的分词结果(列表形式)
  • train_y存储该行对应的问句类别(如“question_1.txt"表示类别 1)

最终 train_x 和 train_y 大概长这样:

一个分词后的问句对应一个类别。

数据加载模块完整代码:

import os
import re
import jieba
from common import constantdef load_train_data():train_x = []train_y = []question_dir = os.path.join(constant.DATA_DIR, "question")# 从文件夹读取文件列表file_name_list, file_path_list = get_file_list(question_dir)# 遍历文件列表for file_item in file_path_list:# 从文件名中用正则获取到标签# 拆分路径获取文件名dir_name, file_name = os.path.split(file_item)label_str = re.sub(r'\D', "", file_name)# 读取每一行作为训练数据if label_str.isnumeric():label = int(label_str)with (open(file_item, "r", encoding="utf-8")) as file:lines = file.readlines()for line in lines:# print(line)# 分词word_list = list(jieba.cut(line))train_x.append(" ".join(word_list))train_y.append(label)return train_x, train_ydef get_file_list(source_path):# 从文件夹读取到文件列表file_path_list = []file_name = []walk = os.walk(source_path)# print(walk)for root, dirs, files in walk:for name in files:filepath = os.path.join(root, name)file_name.append(name)file_path_list.append(filepath)# print(name)# print(filepath)# print("---")return file_name, file_path_listif __name__ == "__main__":""# question_dir = os.path.join(constant.DATA_DIR, "question")# get_file_list(question_dir)load_train_data()

http://www.dtcms.com/wzjs/350926.html

相关文章:

  • 产品营销策划白帽seo公司
  • 东莞做网站哪家好排名优化关键词
  • 网站整体克隆包含后台优化设计电子课本
  • 网站开发与维护前景备案查询
  • 电脑免费安装wordpress网站优化及推广
  • 做防腐木花架的网站锦绣大地seo官网
  • 做外贸网站公司哪家外贸网站建设平台
  • 电商设计属于什么设计成都优化官网公司
  • 中企动力做的网站不好SEO惠州关键词排名优化
  • 网站建设画册站长工具平台
  • 做字幕网站有哪些如何做网站的教程
  • 2002年做网站多少钱长沙seo网站排名
  • 做公司网站的多少钱seo优化专员工作内容
  • 珠海企业医疗网站建设重庆seo研究中心
  • 独山子区做网站哪里好app001推广平台官网
  • iis添加网站谷歌推广公司哪家好
  • 网站建设完不管了自己怎么接手百度关键词竞价查询系统
  • 上海优化排名网站百度热搜关键词排名优化
  • 怀来住房和城乡建设局网站seo优化资源
  • 潍坊个人做网站的公司搜索引擎分哪三类
  • 分销网站怎么做seo如何提升排名收录
  • 做外贸翻译用哪个网站好wordpress企业网站模板
  • 哪个网站可以做片头淘宝优秀软文范例100字
  • 建筑施工企业贵州seo培训
  • 服务范围 网站建设公司微信公众平台开发
  • 苏州做网站公司精选苏州聚尚网络广州广告推广公司
  • 装饰公司网页设计seo搜索引擎实训心得体会
  • 可以做免费广告的网站什么是百度权重
  • 郑州网站制作方案报价在线crm网站建站
  • 石家庄学做网站建设培训学校知乎营销平台