多元数据直观表示(R语言)
一、实验目的:
通过上机试验,掌握R语言实施数据预处理及简单统计分析中的一些基本运算技巧与分析方法,进一步加深对R语言简单统计分析与图形展示的理解。
数据:
链接: https://pan.baidu.com/s/1kMdUWXuGCfZC06lklO5iXA 提取码: g55h
二、实验内容:
bank.csv文件中数据来自1969-1971年美国一家银行的474名职员情况调查。该数据共8个变量,包括:
gender:性别,1代表男性,2代表女性;
educ:受教育年限(单位:年);
jobcat:职位等级,分1,2,3级,1级工作地位最低,3级最高;
salary:当前工资(单位:美元/年);
salbegin:初始工资,指进入银行初始薪酬(单位:美元/年);
jobtime:工作月份,指在银行累计工作时间(单位:月);
prevexp:以前工作经历,指在其他单位累计工作时间(单位:月);
minority: 是否少数民族,0代表不是,1代表是。
(1)请绘制折线图,展示工资如何随工作时间变化,并对图形进行解读。
(2)请绘制气泡图,展示性别、职位等级与当前工资的关系,并对图形进行解读。
(3)(至少有两个分析)自行选择感兴趣的变量与分析目的,利用基本统计分析图形进行直观表示并加以解读。此小题对使用何种图形展示不做严格要求,只需不是折线图及气泡图即可。
三、实验过程与结果:
(1)绘制折线图,展示工资如何随工作时间变化,并对图形进行解读:
data<-read.csv("E:/学习资料及作业/2.2多元统计分析R/实验1/bank.csv")datad1<-aggregate(salary~jobtime,data,mean) #求salary的均值library(ggplot2)ggplot(data=d1,aes(x=jobtime,y=salary))+ # 折线图geom_line(color="green",size=1) #线的颜色、粗细
运行结果:
解读分析:
从总体上看,工作时间jobtime与工资salary之间不存在线性关系,即使工作时间在小范围内变化,薪资可能波动较大。当工作时间超过90时,总体的薪资会比工作时间小于90的多一点儿,表明工作时间会对薪资有一定的影响,但薪资并不是只由工作时间直接决定的,还存在其他因素对其有影响。
(2)绘制气泡图,展示性别、职位等级与当前工资的关系,并对图形进行解读。
d2<-aggregate(x=data$salary,by=list(data$jobcat,data$gender),FUN=mean)d2ggplot(data=d2,aes(x=Group.1, y=Group.2, size=x,col=1)) +geom_point(alpha=0.5) + #调整圆圈透明度scale_size(range = c(1, 10), name="性别、职位等级与当前工资的关系图")+ #图例名称xlab('jobcat') + # 更改x、y轴名称ylab('gender')
运行结果:
解读分析:
男性1到3等级都有分布,女性只有1、3等级,从男性角度来看,1、2等级的薪资差别不大,但1、2与3等级薪资相差较大,都快相差两倍了;从女性角度来看,等级1与等级3相差巨大。并且男性和女性都为等级1时,男性的薪资与女性的相差较大。
(3)自行选择感兴趣的变量与分析目的,利用基本统计分析图形进行直观表示并加以解读。此小题对使用何种图形展示不做严格要求,只需不是折线图及气泡图即可。
①分别用箱型图绘制职位等级与受教育年限、职位等级与薪资的关系:
代码:
data$jobcat<-factor(data$jobcat)ggplot(data,aes(x=jobcat,y=educ))+geom_boxplot()+labs(title="职位等级与受教育年限的关系",x="职位等级",y="受教育年限")+theme(plot.title = element_text(hjust=0.5))data$jobcat<-factor(data$jobcat)ggplot(data,aes(x=jobcat,y=salary))+geom_boxplot()+labs(title="职位等级与薪资的关系",x="职位等级",y="薪资")+theme(plot.title = element_text(hjust=0.5))
运行结果:
解读分析:
从均值来看,等级1、2的受教育的年限均值相同,等级3最高,但等级1、2的薪资均值相差不大,等级3的薪资却比等级1、2高得多,从某种程度上可以表明受教育年限越高,其薪资也越高。等级2的薪资较为集中,几乎没什么波动。
②受教育年限、以前工作经历与初始工资的关系:
代码:
d3<-aggregate(x=data$salbegin,by=list(data$prevexp,data$educ),FUN=mean)ggplot(data=d3,aes(x=Group.1, y=Group.2, size=x,col=1)) +geom_point(alpha=0.5) + #调整圆圈透明度scale_size(range = c(1, 10), name="受教育年限、以前工作经历与初始工资的关系图")+ #图例名称xlab('prevexp') + # 更改x、y轴名称ylab('educ')
解读分析:
受教育越高的平均工作时间要比受教育低的少,并且获得的薪酬也相对多一些。
③以前的工作经历对初始薪资的影响:
代码:
d4<-aggregate(salbegin~prevexp,data,mean)order<-sort(d4$prevexp,decreasing=T)ggplot(data=d4,aes(prevexp,salbegin))+geom_bar(stat="identity",width=0.8,colour="black",linewidth=0.25,fill="#FC4E07",alpha=1)
运行结果:
解读分析:
以前的工作经历大多集中在0-120个月,即1-10年,随着工作经历的增加,会出现少数再找工作时,其初始工资很高,但是总体工作经历对其再工作时的初始工资没有什么影响。并且当工作经历达到200个月以上时,再次换工作的人也偏少了,这可能与他们进入中年,追求平稳的生活可能有关。
相关文章:

多元数据直观表示(R语言)
一、实验目的: 通过上机试验,掌握R语言实施数据预处理及简单统计分析中的一些基本运算技巧与分析方法,进一步加深对R语言简单统计分析与图形展示的理解。 数据: 链接: https://pan.baidu.com/s/1kMdUWXuGCfZC06lklO5iXA 提取码: …...

【JavaEE】线程安全
【JavaEE】线程安全 一、引出线程安全二、引发线程安全的原因三、解决线程安全问题3.1 synchronized关键字(解决修改操作不是原子的)3.1.1 synchronized的特性3.1.1 synchronized的使用事例 3.2 volatile 关键字(解决内存可见性) …...

HarmonyOS 5.0应用开发——多线程Worker和@Sendable的使用方法
【高心星出品】 文章目录 多线程Worker和Sendable的使用方法开发步骤运行结果 多线程Worker和Sendable的使用方法 Worker在HarmonyOS中提供了一种多线程的实现方式,它允许开发者在后台线程中执行长耗时任务,从而避免阻塞主线程并提高应用的响应性。 S…...
华为OD-2024年E卷-分批萨[100分]
文章目录 题目描述输入描述输出描述用例1解题思路Python3源码 题目描述 吃货"和"馋嘴"两人到披萨店点了一份铁盘(圆形)披萨,并嘱咐店员将披萨按放射状切成大小相同的偶数个小块。但是粗心的服务员将披萨切成了每块大小都完全不…...

SSH监控
创建/etc/ssh/sshrc文件 写入以命令 echo " 系统状态 " uptime free -h 每次登录会显示 如果在sshrc文件加入以下脚本每次登录就是执行这个脚本 # cat /etc/ssh/sshrc echo " 系统状态 " uptime free -h /usr/local/bin/monit.sh以…...

leetcode日记(74)扰乱字符串
很有难度的一题,一开始真的绕了很多思维上的弯路。 最开始的想法是递归,看到题目的时候想到动态规划但是完全没有思路应该怎么用,结果确实是递归动态规划。 最开始的想法是构建树,每一层包含这一步划分的方法(实际会…...

RV1126的OSD模块和SDL_TTF结合输出H264文件
目录 一.RV1126多线程处理输出OSD字符叠加图层的流程 1.1. VI模块的初始化 1.2. 初始化VENC模块: 1.3. 初始化RGN模块: 1.4. 绑定VI模块和VENC模块,伪代码如下 1.5. 创建多线程进行OSD字库的叠加: 1.6. 获取每一帧处理过后的…...

GEE:计算长时间序列NPP与NDVI之间的相关系数
GEE中内置了计算相关系数的函数,可以分析两个变量之间的相关性,比如要分析两个波段之间的相关性,主要用到ee.Reducer.pearsonsCorrelation()函数。 ee.Reducer.pearsonsCorrelation() 内容:创建一个双输入归约器,用于…...

水仙花数(华为OD)
题目描述 所谓水仙花数,是指一个n位的正整数,其各位数字的n次方和等于该数本身。 例如153是水仙花数,153是一个3位数,并且153 13 53 33。 输入描述 第一行输入一个整数n,表示一个n位的正整数。n在3到7之间&#x…...

【对话状态跟踪】关心整个对话过程用户完整意图变化
对话状态管理器 核心逻辑是解决键冲突和验证范围有效性, 但需依赖外部输入的正确性。在实际应用中, 可能需要结合用户提示或自动修正逻辑以提高鲁棒性。 NLU 槽 值 对儿 NLU的目的是把自然语言解析成结构化语义。结构化语义有多种表示方式,…...

【分享】网间数据摆渡系统,如何打破传输瓶颈,实现安全流转?
在数字化浪潮中,企业对数据安全愈发重视,网络隔离成为保护核心数据的重要手段。内外网隔离、办公网与研发网隔离等措施,虽为数据筑牢了防线,却也给数据传输带来了诸多难题。传统的数据传输方式在安全性、效率、管理等方面暴露出明…...

TikTok创作者市场关闭!全新平台TikTok One将带来哪些改变?
TikTok创作者市场关闭,全新平台TikTok One上线,创作者和品牌将迎来哪些新机遇? 近日,TikTok宣布关闭其原有的创作者市场(TikTok Creator Marketplace),并推出全新平台TikTok One。这一消息在社…...
LeetCode hot 100—矩阵置零
题目 给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 示例 示例 1: 输入:matrix [[1,1,1],[1,0,1],[1,1,1]] 输出:[[1,0,1],[0,0,0],[1,0,1]]示例 2࿱…...

部署Windows Server自带“工作文件夹”实现企业网盘功能完整步骤
前文已经讲解过Windows Server自带的“工作文件夹”功能,现以Windows Server 2025为例介绍部署工作文件夹的完整步骤: 为了确保您能够顺利部署和充分利用工作文件夹的功能,我将按照以下步骤进行讲解。 请注意,在域环境中部署工作…...

植物大战僵尸杂交版v3.3最新版本(附下载链接)
B站游戏作者潜艇伟伟迷于12月21日更新了植物大战僵尸杂交版3.3版本!!!,有b站账户的记得要给作者三连关注一下呀! 不多废话下载链接放上: 夸克网盘链接::https://pan.quark.cn/s/6f2a…...
非关系型数据库和关系型数据库的区别
非关系型数据库(NoSQL)和关系型数据库(SQL)的主要区别体现在以下几个方面: 数据模型: 关系型数据库(SQL):数据以表格形式存储,数据行和列组成,每个…...

CPU负载高告警问题的定位与优化建议
#作者:猎人 文章目录 背景一.问题排查1.1 找到相应的容器1.2 找到对应的deployment1.3 查看pod日志1.4 查看nginx配置文件1.5 查看deployment的yaml文件 二.优化建议 背景 Docker 版本:19.03.14 Operating System: Red Hat Ent…...

2月28日,三极管测量,水利-51单片机
众所周知,三极管(BJT)有三个管脚,基极(B)、集电极(C)、发射极(E),在实际应用中,不可避免地会遇到引脚辨别的问题。接下来就讲下三极管…...

批量提取 Word 文档中的图片
在 Word 文档中,我们可以插入图片、文本、链接等各种各样的资源。在某些场景下我们需要提取这些信息,比如我们需要提取 Word 文档中的图片,将每一个 Word 文档中的图片都提取出来放到一个单独的文件夹中,那么我们应该怎么做呢&…...

C#—Settings配置详解
C#—Settings配置详解 在C#项目中,全局配置通常指的是应用程序的设置(settings),这些设置可以跨多个类或组件使用,并且通常用于存储应用程序的配置信息,如数据库连接字符串、用户偏好设置等。 Settings配置…...

idea大量爆红问题解决
问题描述 在学习和工作中,idea是程序员不可缺少的一个工具,但是突然在有些时候就会出现大量爆红的问题,发现无法跳转,无论是关机重启或者是替换root都无法解决 就是如上所展示的问题,但是程序依然可以启动。 问题解决…...

多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...
golang循环变量捕获问题
在 Go 语言中,当在循环中启动协程(goroutine)时,如果在协程闭包中直接引用循环变量,可能会遇到一个常见的陷阱 - 循环变量捕获问题。让我详细解释一下: 问题背景 看这个代码片段: fo…...
FFmpeg 低延迟同屏方案
引言 在实时互动需求激增的当下,无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作,还是游戏直播的画面实时传输,低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架,凭借其灵活的编解码、数据…...

遍历 Map 类型集合的方法汇总
1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

376. Wiggle Subsequence
376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...
反射获取方法和属性
Java反射获取方法 在Java中,反射(Reflection)是一种强大的机制,允许程序在运行时访问和操作类的内部属性和方法。通过反射,可以动态地创建对象、调用方法、改变属性值,这在很多Java框架中如Spring和Hiberna…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)
在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...

ios苹果系统,js 滑动屏幕、锚定无效
现象:window.addEventListener监听touch无效,划不动屏幕,但是代码逻辑都有执行到。 scrollIntoView也无效。 原因:这是因为 iOS 的触摸事件处理机制和 touch-action: none 的设置有关。ios有太多得交互动作,从而会影响…...

Docker 本地安装 mysql 数据库
Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker ;并安装。 基础操作不再赘述。 打开 macOS 终端,开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...