深度学习-数据预处理

目录

  • 创建一个人工数据集
  • 处理缺失的数据
    • 插入
      • 对inputs中的类别值或离散值,将NaN视为一个类别
      • 对inputs和outputs中的数值类型转换为张量格式

创建一个人工数据集

import os
import pandas as pd
os.makedirs(os.path.join('..', 'data'), exist_ok=True) 
data_file = os.path.join('..', 'data', 'house_tiny.csv')
with open(data_file, 'w') as f:f.write('NumRooms,Alley,Price\n')f.write('NA,Pave,127500\n')f.write('2,NA,10600\n')f.write('4,NA,178100\n')f.write('NA,NA,140000\n')
data = pd.read_csv(data_file)
print(data)

结果:
在这里插入图片描述

os.makedirs():递归创建目录
os.path.join(‘. .’, ‘data’): ‘. .’(代表上一级目录
exist_ok=True:当设置为True时,如果目录已经存在,os.makedirs()不会引发错误。
默认情况下,如果目录已存在,os.makedirs()会引发一个FileExistsError

在这里插入图片描述




处理缺失的数据

典型的方法包括插值删除

插入

import os
import pandas as pd
data_file = os.path.join('..', 'data', 'house_tiny.csv')
data = pd.read_csv(data_file)
inputs, outputs = data.iloc[:, 0:2], data.iloc[:, 2]
inputs = inputs.fillna(inputs.select_dtypes(include='number').mean())
print(inputs)

结果:
在这里插入图片描述
对于这种情况:

import os
import pandas as pd
data_file = os.path.join('..', 'data', 'house_tiny.csv')
data = pd.read_csv(data_file)
inputs, outputs = data.iloc[:, 0:2], data.iloc[:, 2]
inputs = inputs.fillna(inputs.mean())
print(inputs)

结果:
在这里插入图片描述
分析:
首先先选出数据类型再求平均值填充
iloc[]是切片操作,data.iloc[:, 0:2]中0:2 表示取从第 0 列和第1列。

在这里插入图片描述
data.iloc[:, 2]中2表示下标为2的列,即第三列。

import os
import pandas as pd
data_file = os.path.join('..', 'data', 'house_tiny.csv')
data = pd.read_csv(data_file)
inputs, outputs = data.iloc[:, 0:2], data.iloc[:, 2]
print(outputs)

结果:
在这里插入图片描述




对inputs中的类别值或离散值,将NaN视为一个类别

在这里插入图片描述

import os
import pandas as pd
data_file = os.path.join('..', 'data', 'house_tiny.csv')
data = pd.read_csv(data_file)
inputs, outputs = data.iloc[:, 0:2], data.iloc[:, 2]
inputs = inputs.fillna(inputs.mean(numeric_only=True))
#inputs.fillna(inputs.select_dtypes(include='number').mean())
inputs = pd.get_dummies(inputs, dummy_na=True, dtype=int)
print(inputs)

结果:
在这里插入图片描述




对inputs和outputs中的数值类型转换为张量格式

import os
import pandas as pd
import torch
data_file = os.path.join('..', 'data', 'house_tiny.csv')
data = pd.read_csv(data_file)
inputs, outputs = data.iloc[:, 0:2], data.iloc[:, 2]
inputs = inputs.fillna(inputs.mean(numeric_only=True))
inputs = pd.get_dummies(inputs, dummy_na=True, dtype=int)
x, y = torch.tensor(inputs.values), torch.tensor(outputs.values)
print(x)
print(y)

结果:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2980099.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

【后端】PyCharm的安装指引与基础配置

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、PyCharm是什么二、PyCharm安装指引安装PyCharm社区版安装PyCharm专业版 三、配置PyCharm:四、总结 前言 随着开发语言及人工智能工具的普及&am…

sqlilabs靶场1—20题学习笔记(思路+解析+方法)

前几个题目较为简单,均尝试使用各种方法进行SQL注入 第一题 联合查询 1)思路: 有回显值 1.判断有无注入点 2.猜解列名数量 3.判断回显点 4.利用注入点进行信息收集 爆用户权限,爆库,爆版本号 爆表,爆列&…

ABeam×StartUp丨蓝因机器人访问ABeam旗下德硕管理咨询(深圳)新创部门,展开合作交流

近日,深圳蓝因机器人科技有限公司(以下简称“蓝因机器人”)创始人陈卜铭先生来访ABeam旗下德硕管理咨询(深圳)有限公司(以下简称“ABeam-SZ”),与新创部门展开合作交流。 交流中&am…

【无线通信】OQPSK

调制 sps 8; RolloffFactor 0.2; FilterSpanInSymbols 10;bits randi([0, 1], 224*8, 1); % 1792symbols bits*2 - 1; % 1792 re -symbols(2:2:end); % 896 im -symbols(1:2:end); % 896pFilterTx comm.RaisedCosineTransmitFilter(...Shape, Square root, ...Rollo…

Linux进程详解二:创建、状态、进程排队

文章目录 进程创建进程状态进程排队 进程创建 pid_t fork(void) 创建一个子进程成功将子进程的pid返回给父进程,0返回给新创建的子进程 fork之后有两个执行分支(父和子),fork之后代码共享 bash -> 父 -> 子 创建一个进…

这届年轻人,对AI对象上头

在AI技术飞速发展的今天,虚拟对象这一概念也流行了起来。从AI女友到AI男友,这些基于人工智能的AI社交应用正在改变我们对情感陪伴的认知。本文深入探讨了AI虚拟对象的兴起、用户需求、商业模式以及技术局限,不妨来看一下。 继2023年文生文大语…

dremio支持设置

Dremio 支持提供可用于诊断目的的设置。这些设置通过 Dremio UI:设置>支持启用(或禁用) 使用 Client Tools 可以配置当用户查看数据集中的数据时,Dremio 项目的工具栏上显示哪些客户端应用程序按钮。用户可以通过单击相应的工具…

多线程情况下IBMMQ报文丢失原因分析

背景 最近工作中,使用IBMMQ,重启服务时有偶发性的报文丢失情况,应用从队列中获取到了消息,但是线程停止没有处理。 分析 消息处理线程流程: 判断线程状态是否可用,如果不可用直接返回。使用MQQueue.get…

OpenHarmony开源鸿蒙NEXT星河版内核嵌入式编程

一、前景提要 2024年1月18日,华为放出HarmonyOS NEXT 鸿蒙星河版开发者预览版本(不是HarmonyOS NEXT版,是HarmonyOS NEXT星河版),首次提到用鸿蒙内核(暂命名)取代了Linux内核。 该内核源码还未放…

html网页在展示时,监听网络是否断网,如果断网页面暂停点击响应

序言: 集合百家之所长,方著此篇文章,废话少说,直接上代码,找好你的测试网页,进行配置,然后复制粘贴代码,就可以了。 1.css文件内容 #newbody{display: none;width: 100%;height: 9…

检索增强生成(RAG)技术

随着大型语言模型(LLMs)在自然语言处理(NLP)领域的显著进步,它们在多个评估基准测试中显示出超越人类水平的语言和知识掌握能力。然而,这些模型在实际应用中也面临着一系列挑战,如制造事实、知识…

茶饮门店本地生活抖音团购运营方案计划书

【干货资料持续更新,以防走丢】 茶饮门店本地生活抖音团购运营方案计划书 部分资料预览 资料部分是网络整理,仅供学习参考。 PPT可编辑80页(完整资料包含以下内容) 目录 抖音本地生活运营方案 1. 账号基础搭建与优化 - 门店账号…

第26天:安全开发-PHP应用模版引用Smarty渲染MVC模型数据联动RCE安全

第二十六天 一、PHP新闻显示-数据库操作读取显示 1.新闻列表 数据库创建新闻存储代码连接数据库读取页面进行自定义显示 二、PHP模版引用-自写模版&Smarty渲染 1.自写模版引用 页面显示样式编排显示数据插入页面引用模版调用触发 2.Smarty模版引用 1.下载&#xff1a…

Dijkstra算法,你的最短路来了!

录友们,最近我在图论方面已经开始更最短路系列了,讲好最短路问题,其实也是很难的,本篇我仅仅是讲了朴素版Dijkstra,但就写了将近1w字,画了二十张图。学算法易,讲清楚难! 题目链接 …

C语言(static和extern)

Hi~!这里是奋斗的小羊,很荣幸各位能阅读我的文章,诚请评论指点,关注收藏,欢迎欢迎~~ 💥个人主页:小羊在奋斗 💥所属专栏:C语言 本系列文章为个人学习笔记&#x…

Midjourney是什么?Midjourney怎么用?怎么注册Midjourney账号?国内怎么使用Midjourney?多人合租Midjourney拼车

Midjourney是什么 OpenAI发布的ChatGPT4引领了聊天机器人的竞争浪潮,随后谷歌推出了自己的AI聊天机器人Bard,紧接着微软推出了Bing Chat,百度也推出了文心一言,这些聊天机器人的推出,标志着对话式AI技术已经达到了一个…

TCP相关问题总结

文章目录 TCP连接建立过程1. TCP三次握手2. TCP四次挥手3. TCP为什么是三次握手4. TCP为什么是四次挥手 TCP流量控制TCP拥塞控制1. 为什么需要拥塞控制2. 控制手段 TCP连接建立过程中出现丢包 TCP连接建立过程 1. TCP三次握手 首先client端发出连接请求,并且请求同…

RAG:智能图书馆员引领AI的知识之旅

想象一下,你是一个法官,面对一个复杂的案件,你需要查阅大量的法律文献来找到相关的案例和法律条文。在AI的世界里,也有一个类似的“法官”——大型语言模型(LLMs)。它们能够回答各种问题,但有时…

【大模型系列】预训练

数据 数据预处理 预处理流程: 原始语料库—>质量过滤(语种过滤、统计过滤、关键词过滤、分类器过滤)—>敏感内容过滤(有毒内容、隐私内容PII)—>数据去重(句子级别、文档级别、数据集级别&#…

文件读取和写入

1、with open 和 open close 的对比 with open 的优点 1、自动关闭文件:with 语句会在代码块执行完毕后自动关闭文件,无需显式调用 close() 方法。 2、异常安全:如果在代码块中发生异常,with 语句仍然会确保文件被正确关闭。 3、…