可视化实操记录(自用)
流程
读取数据
original_data = pd.read_csv(“Penguins.csv”)
original_data.head()
评估和清理数据
cleaned_data = original_data.copy() #备份
结构
original_data.sample(5)
数据符合“每个变量为一列,每个观察值为一行,每种类型的观察单位为一个表格”,才不存在结构性问题。
内容
更改数据类型
cleaned_data[“sex”]=cleaned_data[“sex”].astype(“category”)——把分类变量从object变成category
空缺值
cleaned_data.info()——了解大概哪列缺,缺多少
cleaned_data[cleaned_data[“culmen_length_mm”].isnull()]——提取缺失值对应的行
cleaned_data.drop(3, inplace=True)——缺失得太厉害,没有价值的行直接删除。
缺失性别变量的观察值具备其它数据,仍然可以为分析提供价值。由于Pandas以及Matplotlib、Seaborn会自动忽略缺失值,可以保留这些行。
重复值
**根据数据变量的含义以及内容来看,允许变量重复,**我们不需要对此数据检查是否存在重复值。
什么是不能重复的?比如学号。
不一致数据
重点检查分类变量。
cleaned_data[“sex”].value_counts()
sex列里存在一个英文句号值,并不代表任何有效性别,我们应当把该值替换为NaN空值。
cleaned_data[‘sex’] = cleaned_data[‘sex’].replace(“.”, np.nan)
脱离实际的数据
cleaned_data.describe()
从以上统计信息来看,cleaned_house_price里不存在脱离现实意义的数值。
数据可视化探索
sns.set_palette(“pastel”) #设置图表色盘为"pastel"
单个分类变量——饼图
species_count = cleaned_data[“species”].value_counts() #统计类别对应的个数
plt.pie(species_count,labels=species_count.index,autopct=“%.1f%%”) #标签就用统计生成的标签索引
可以看出比例分布。
两两分类变量——countplot+hue颜色分类
sns.countplot(data=cleaned_data, x=“island”, hue=“species”)
可以显示不同岛上的企鹅种类数量。
数值变量之间的关系——pairplot
sns.pairplot(cleaned_data)
如果要根据种类进行细分:
sns.pairplot(cleaned_data, hue=‘species’)
补充
.astype()
astype() 参数:目标数据类型。
返回一个新的 Series(如果是对 DataFrame 的某一列操作)或 DataFrame(如果是对整个 DataFrame 操作),其数据类型已经按照指定的参数进行了转换。原始的 Series 或 DataFrame 并不会被直接修改。
三种赋值方式
cleaned_data = original_data:纯引用赋值
并没有创建一个新的对象,而是让 cleaned_data 和 original_data 指向内存中的同一个对象。也就是说,这两个变量实际上是同一个对象的不同名称。
cleaned_data = original_data.copy():浅拷贝
浅拷贝会创建一个新的对象,但是如果原对象中的元素是可变对象(如列表、字典等),它只会复制引用。也就是说,那么新对象和原对象中的这些可变元素仍然会指向同一个内存地址。
当你修改 cleaned_data 中的子列表时,original_data 中的对应子列表也会被修改。
cleaned_data = original_data.copy(deep=True):深拷贝
深拷贝会递归地复制对象及其所有嵌套的对象,创建一个完全独立的新对象,它们在内存中没有任何共享的部分。
当你修改 cleaned_data 中的子列表时,original_data 不会受到影响。
综上,简单赋值只是创建引用,浅拷贝复制对象结构但共享嵌套的可变对象,而深拷贝则创建一个完全独立的副本。
在原数据中删除行
cleaned_data.drop([3,339], inplace=True)等价于cleaned_data = cleaned_data.drop([3,339])
当使用 inplace=True 时,drop 方法会直接在原 DataFrame 上进行修改,不会返回新的对象。
替换元素
replace 是 pandas 中 Series 和 DataFrame 对象都有的一个方法,其作用是将指定的值替换为其他值。
第一个参数 “.” 表示要被替换的值,
第二个参数 np.nan 是 NumPy 库中的 NaN值。所以cleaned_data[‘sex’] = cleaned_data[‘sex’].replace(“.”, np.nan)的意思是把 cleaned_data[‘sex’] 列中所有值为 “.” 的元素替换为 NaN。
饼图
plt.pie(species_count,labels=species_count.index,autopct=“%.1f%%”)
labels不仅可以传Series,还可以传列表等其它可迭代对象。所以这里直接用species_count
配对图
sns.pairplot(data=cleaned_data,hue=“species”,kind=“reg”, plot_kws={‘scatter_kws’:{‘alpha’:0.3}}) #对种类细分,并增加回归线,修改点的透明度
**kind 参数用于指定非对角线子图(即散点图)的绘制类型。**设置为 “reg” 表示在散点图的基础上添加线性回归拟合线。这样可以帮助我们直观地观察变量之间的线性关系趋势。默认值是kind=“scatter”。
plot_kws={‘scatter_kws’:{‘alpha’:0.3}}
plot_kws 是一个字典类型的参数,用于传递额外的绘图选项,这些选项会被应用到所有的子图上。
其中 ‘scatter_kws’ 是 plot_kws 字典中的一个键,它对应的值也是一个字典,专门用于设置散点图的相关属性。
‘alpha’: 0.3 是 scatter_kws 字典中的一个键值对,alpha 表示透明度,取值范围是 0 到 1,0 表示完全透明,1 表示完全不透明。这里设置为 0.3,意味着散点图中的数据点会有一定的透明度,当数据点比较密集时,使用较低的透明度可以避免数据点相互遮挡,更清晰地展示数据的分布情况。单个散点图直接加上’alpha’: 0.3参数就好。
相关文章:

可视化实操记录(自用)
流程 读取数据 original_data pd.read_csv(“Penguins.csv”) original_data.head() 评估和清理数据 cleaned_data original_data.copy() #备份 结构 original_data.sample(5) 数据符合“每个变量为一列,每个观察值为一行,每种类型的观察单位为一…...

二叉树的遍历方式和子问题思路
目录 二叉树的遍历: 前序遍历: 中序遍历: 后序遍历: 二叉树的基本操作: 求树的结点个数(递归遍历思路): 求树的结点个数(子问题思路): 求树的…...

运用Deek Seeker协助数据分析
我的数据源有两张表,一个是每日销售表(字段有日期、产品名称、实际销量),一个是每月目标表(字段有年度月份、产品名称、目标销量);我的需求是,按月、按年来统计每个产品的目标完成情况请问用PowerBl进行分析,应该如何建立数据模型…...

服务器之连接简介(Detailed Explanation of Server Connection)
一台服务器最大能支持多少连接?一台客户端机器最多能发起多少条连接?? 我们知道TCP连接,从根本上看其实就是client和server端在内存中维护的一组【socket内核对象】(这里也对应着TCP四元组:源IP、源端口、…...

低空经济:开启未来空中生活的全新蓝海
引言 随着科技的进步,我们不再仅仅依赖地面交通和传统物流。你是否曾幻想过,未来的某一天,快递、外卖可以像魔法一样直接从空中送到你手中?或者,你能乘坐小型飞行器,快速穿梭于城市之间,告别拥堵…...

主动视觉可能就是你所需要的:在双臂机器人操作中探索主动视觉
AV-ALOHA 系统使用用于 AV 的 VR 耳机实现直观的数据收集,并且 用于作的 VR 控制器或引线臂。这有助于捕捉全身和头部 远程作我们的真实和模拟系统的运动,记录来自 6 个的视频 不同的摄像头,并为我们的 AV 仿制学习策略提供训练数据。 加州大…...

洛谷 P6419 COCI2014/2015 #1 Kamp 题解
题意 一颗树 n n n 个点, n − 1 n-1 n−1 条边,经过每条边都要花费一定的时间,任意两个点都是联通的。 有 k k k 个人(分布在 k k k 个不同的点)要集中到一个点举行聚会。 聚会结束后需要一辆车从举行聚会的这点…...
在 Vue 项目中使用 SQLite 数据库的基础应用
目录 一、环境准备二、数据库连接与操作1. 创建数据库连接2. 创建表3. 插入数据4. 查询数据5. 更新数据6. 删除数据 三、在 Vue 组件中使用 SQLite 一、环境准备 安装 Node.js 和 npm:确保已安装 Node.js 和 npm。 创建 Vue 项目:使用 Vue CLI 创建一个…...
AI会话问答的页面滚动处理(参考deepseek页面效果)
近期在接入deepseekR1的深度思考,研究了下deepseek官网的滚动效果,大概如下:用户发出消息后,自动滚动到页面最底部,让最新消息展示在视野中,这时候,我们先处理一次滚动: const scrol…...

GRN前沿:DGCGRN:基于有向图卷积网络的基因调控网络推理
1.论文原名:Inference of gene regulatory networks based on directed graph convolutional networks 2.发表日期:2024 DGCGRN框架 中心节点和节点的构建 局部增强策略 1. 问题背景 在基因调控网络中,许多节点的连接度较低(即…...
MongoDB 入门操作指南
文章目录 MongoDB 入门操作指南1. 连接到 MongoDB 数据库2. 查看当前数据库3. 显示所有数据库4. 切换或创建数据库5. 查看当前数据库中的所有集合6. 创建集合7. 插入文档插入单个文档插入多个文档 8. 查询文档查询所有文档查询匹配条件的文档格式化查询输出 9. 更新文档更新单个…...
共享设备管理难?MDM助力Kiosk模式一键部署
目录 1. 简化设备部署与配置:实现一键式部署 2. 自动化应用更新与内容推送:确保设备始终保持最新状态 3. 权限控制与设备安全:防止滥用与数据泄露 4. 远程管理与故障诊断:保障设备长期稳定运行 5. 数据分析与报告:…...
HttpClient-Java程序中发送Http请求
配置 <dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId><version>4.5.13</version> </dependency> ps:aliyun-sdk-oss中已引入上述配置 HttpClient的核心API: Htt…...

硬件-电源-隔离与非隔离的区别
文章目录 一:隔离电源与非隔离电源1.1 充电器触电新闻1.2 电路拓扑1.3 隔离电源与非隔离电源的优缺点1.3 隔离电源与非隔离电源的选择1.3.1 隔离电源1.3.2 非隔离电源 二:注意事项2.1 隔离电源结构图2.1 隔离耐压测试方法 三:感悟道友&#x…...
Kubernetes 最佳实践:Top 10 常见 DevOps/SRE 面试问题及答案
1. 如何在 Kubernetes 中设置资源请求和限制? 资源请求确保容器有最小资源量(CPU/内存),而限制则强制容器消耗的最大资源量。这有助于高效资源分配并防止资源争用。 示例: resources:requests:memory: "256Mi&…...

Training for Computer Use
Training for Computer Use 核心事件:多家科技公司推出能操控计算机的智能体,字节跳动和清华大学团队引入UI - TARS模型,展示了训练模型实现计算机操控能力的新成果。 UI - TARS模型 基本信息:是视觉 - 语言模型Qwen2 - VL的微调版…...

PH热榜 | 2025-02-14
1. Beatoven.ai 标语:能创作完美背景音乐的AI作曲家 介绍:Beatoven.ai 能根据简单的提示生成惊艳的背景音乐,用于你的内容创作。它是由世界各地的真实音乐家倾力打造(并使用了大量数据)。无需任何音乐专业知识&#…...

工业物联网远程监控系统优化方案,基于巨控GRM553Y-CHE
工业物联网远程监控系统优化方案 ——基于巨控GRM553Y-CHE的西门子S7-1500 PLC多站点无线集成方案 1. 项目背景与概述 巨控科技作为工业物联网解决方案提供商,专注于PLC无线通信与远程监控技术研发,其YunPLC安全平台已服务超30,000工业终端,…...

报名丨Computer useVoice Agent :使用 TEN 搭建你的 Mac Assistant
与 TEN 相聚在「LET’S VISION 2025」大会,欢迎来展位上跟我们交流。这次我们还准备了一场聚焦「computer use」的工作坊,功能新鲜上线,线下首波体验! 📅 TEN 展位:2025年3月1日-2日 TEN workshop&#x…...
Flutter 中的生命周期
在 Flutter 中,StatefulWidget 和 StatelessWidget 这两种 Widget 的生命周期不同,主要关注的是 StatefulWidget,因为它涉及到状态的管理和更新。 StatefulWidget 的生命周期: 1. 创建阶段 (Create) createState():…...
CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型
CVPR 2025 | MIMO:支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题:MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者:Yanyuan Chen, Dexuan Xu, Yu Hu…...
云计算——弹性云计算器(ECS)
弹性云服务器:ECS 概述 云计算重构了ICT系统,云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台,包含如下主要概念。 ECS(Elastic Cloud Server):即弹性云服务器,是云计算…...
解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错
出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南 在数字化营销时代,邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天,我们将深入解析邮件打开率、网站可用性、页面参与时…...

华硕a豆14 Air香氛版,美学与科技的馨香融合
在快节奏的现代生活中,我们渴望一个能激发创想、愉悦感官的工作与生活伙伴,它不仅是冰冷的科技工具,更能触动我们内心深处的细腻情感。正是在这样的期许下,华硕a豆14 Air香氛版翩然而至,它以一种前所未有的方式&#x…...
python报错No module named ‘tensorflow.keras‘
是由于不同版本的tensorflow下的keras所在的路径不同,结合所安装的tensorflow的目录结构修改from语句即可。 原语句: from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后: from tensorflow.python.keras.lay…...
Python ROS2【机器人中间件框架】 简介
销量过万TEEIS德国护膝夏天用薄款 优惠券冠生园 百花蜂蜜428g 挤压瓶纯蜂蜜巨奇严选 鞋子除臭剂360ml 多芬身体磨砂膏280g健70%-75%酒精消毒棉片湿巾1418cm 80片/袋3袋大包清洁食品用消毒 优惠券AIMORNY52朵红玫瑰永生香皂花同城配送非鲜花七夕情人节生日礼物送女友 热卖妙洁棉…...
基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解
JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用,结合SQLite数据库实现联系人管理功能,并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能,同时可以最小化到系统…...
Java多线程实现之Runnable接口深度解析
Java多线程实现之Runnable接口深度解析 一、Runnable接口概述1.1 接口定义1.2 与Thread类的关系1.3 使用Runnable接口的优势 二、Runnable接口的基本实现方式2.1 传统方式实现Runnable接口2.2 使用匿名内部类实现Runnable接口2.3 使用Lambda表达式实现Runnable接口 三、Runnabl…...
ffmpeg(三):处理原始数据命令
FFmpeg 可以直接处理原始音频和视频数据(Raw PCM、YUV 等),常见场景包括: 将原始 YUV 图像编码为 H.264 视频将 PCM 音频编码为 AAC 或 MP3对原始音视频数据进行封装(如封装为 MP4、TS) 处理原始 YUV 视频…...