R语言实现单变量分析教程

article/2025/8/14 14:06:25

单变量分析是理解单个变量的数值分布情况,与之相对的有双变量分析和多变量分析。

加载示例数据

因为csv文件中年收入字段有千分位分隔符,所以先定义转换函数。

setClass("num.with.commas")
setAs("character", "num.with.commas", function(from) as.numeric(gsub(",", "", from) ) )data <- read.csv("csv/data.csv",colClasses=c('numeric','numeric','num.with.commas','numeric'))
data#    HouseholdID HouseholdSize AnnInCome NumberOfPets
# 1            1             2    37,000            0
# 2            2             4    49,000            0
# 3            3             4    58,000            1
# 4            4             1    68,000            3
# 5            5             3    61,000            2
# 6            6             5    64,000            2
# 7            7             6    79,000            1
# 8            8             4    89,000            1
# 9            9             7   104,000            1
# 10          10             2    95,000            0

我们可以对上面任何一列进行单变量分析,以获得数据分布的更深理解。举例我们选择第二列 HouseholdSize 进行分析,主要包括三类分析:概要统计、频率分布、图表可视化。

概要统计

概要统计是单变量分析中最常用的方法。主要包括两类概要统计:

  • 衡量中心趋势

描述数据集中心的位置,包括平均值和中位数。

mean(data$HouseholdSize)
# 3.8median(data$HouseholdSize)
# 4
  • 衡量离散趋势

描述数值在数据集中的分布情况,包括范围、四分位范围、标准差和方差。

range_info <- max(data$HouseholdSize) - min(data$HouseholdSize)
range_info
# 6# 获得最小值 和 最大值 
range(data$HouseholdSize)
# 1 7# IQR = Q3 – Q1
# 中间50% 数据范围
IQR(data$HouseholdSize)
# 2.5sd(data$HouseholdSize)
# 1.87# 最小 Q1 中位数 Q3 最大值
fivenum(data$HouseholdSize)
# 1 2 4 5 7# 计算分位数
quantile(data$HouseholdSize)#   0%  25%  50%  75% 100% 
# 1.00 2.25 4.00 4.75 7.00 summary(data$HouseholdSize)# Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
# 1.00    2.25    4.00    3.80    4.75    7.00 

频率分布

执行单变量分析的另一种方法是创建频率分布,该分布描述不同值在数据集中出现的频率,通常用于分析因子变量。

table(data$HouseholdSize)# 1 2 3 4 5 6 7 
# 1 2 1 3 1 1 1 

结果显示2有连个, 4 有三个,其他数有1个。

图表分析

通过图表以可视化方式展示变量的数据分布情况。

常用图形包括:

  • 箱线图

箱线图可以同时展示5个数的概要信息,最小Q1,中位数,Q3,最大值

boxplot(data$HouseholdSize, main="Boxplot of HouseHoldSize")

在这里插入图片描述

  • 直方图

直方图用于垂直条形图展示频率,通常用于显示数据分布。

hist(data$HouseholdSize, main="Hist of HouseHoldSize")

在这里插入图片描述

  • 密度曲线图

密度曲线表示数据集中值分布曲线。可视化方式展示分布形状,是否包括多峰,偏度情况。


holdSize_density <- density(data$HouseholdSize)
plot(holdSize_density, main = "density of hold size")

在这里插入图片描述

  • 饼图

饼图展示每个数值占用的百分比。

pie(data$HouseholdSize, main = "Distribution of HoldSize")

在这里插入图片描述

通过不同图形可视化,可以更方便观测数值的分布情况。


http://chatgpt.dhexx.cn/article/9ZAJsSM9.shtml

相关文章

多变量分析绘图及分类属性绘图【知识整理】

多变量分析绘图及分类属性绘图 综述代码模块多指标离散图绘制盒图violin图条形图点图多层面板分类图factorplot()详细说明 小结 综述 学生党整理一些关于数据分析的知识&#xff1a;整理了多变量分析绘图及分类属性绘图的相关代码。主要包括了多指标离散图的绘制、盒图的绘制、…

python多变量相关性分析_多变量相关性分析(一个因变量与多个自变量)

目录:前言 偏相关或复相关 意义与用途 分析方法: 1、 样本相关系数矩阵、相关系数检验 2、 复相关分析 3、 决定系数 (RMSE的介绍) 小结 一、前言: 继上一篇文章,继续探讨相关性分析,这次不再是两个变量,而是3个或者以上的变量之间的相关关系分析。 没读过上…

一文了解11个常见的多变量分析方法!

在社会科学研究中&#xff0c;主要的多变量分析方法包括多变量方差分析&#xff08;Multivariate analysis of variance&#xff0c;MANOVA&#xff09;、主成分分析&#xff08;Principal component analysis&#xff09;、因子分析&#xff08;Factor analysis&#xff09;、…

多变量分析”——数据挖掘、数据分析

I。多重对应分析 多重对应分析在超过两个以上定类变量时有时候非常有效&#xff0c;当然首先我们要理解并思考&#xff0c;如果只有三个或有限的几个变量完全可以通过数据变换和交互表变量重组可以转换成两个定类变量&#xff0c;这时候就可以用简单对应分析了。 对应分析对数据…

点赞、收藏必读文章--数据分析的多变量分析

数据探索性分析(EDA)——多(双)变量分析 0 引言 上一篇文章震惊&#xff01;Python单变量分析竟然如此简单&#xff1f; 介绍了数据分析中的单变量分析&#xff0c;但是我们在实际场景中&#xff0c;遇到的数据大多数是具有多特征、多变量的&#xff0c;因此除了对单个变量进…

“多变量分析”——数据挖掘、数据分析

I。多重对应分析 多重对应分析在超过两个以上定类变量时有时候非常有效&#xff0c;当然首先我们要理解并思考&#xff0c;如果只有三个或有限的几个变量完全可以通过数据变换和交互表变量重组可以转换成两个定类变量&#xff0c;这时候就可以用简单对应分析了。 对应分析对数据…

Open source Python toolbox for seismology

Open source Python toolbox for seismology ObsPy: A Python Toolbox for Seismology https://www.iris.edu/hq/webinar/2015/05/obspy_a_python_toolbox_for_seismology https://github.com/obspy/obspy http://www.obspy.org → https://github.com/obspy/obspy/wiki 2.用p…

Xmy的Python----Numpy库

目录 例题10-1&#xff1a;创建数组并查看数组属性 构造复杂数组 生成随机数 例题10-2&#xff1a;绘制&#xff1a;随机生成10000数据&#xff0c;服从均值为0&#xff0c;方差为1的正态分布的直方图&#xff08;间隔个数&#xff1a;50&#xff09; 通过索引访问数组 数组的…

python3.8安装pysal库

python3.8 安装 pysal 库 我最后是在虚拟环境中测试成功的&#xff0c;在原来的环境中测试还是有问题&#xff0c;但是装这个库只是为了一个assignment&#xff0c;踩完坑来总结一下&#xff0c;先用上再说。 1. 创建虚拟环境 正常环境无论是conda install 还是 conda-forge …

YYlabelCopy

YYlabelCopy 前言 最近公司刷题项目重构,之前刷题是采用富文本渲染,性能极差,业界大神ibireme的YYKit想必大家都知道,YYText的好用之处我就不再赘述.一开始我们是把UIlabel换成YYTextView,为什么不直接换成YYlabel,YYlabel支持异步绘制,因为我们是做公考项目的,试题都要支持复…

Kong Customize Python Plugin

Kong Customize Python Plugin 前情提要&#xff1a;由于公司业务需求&#xff0c;需要针对 Kong 自定义插件&#xff0c;而 Kong 的插件主要是 Lua 语言&#xff0c;公司的技术栈是 Python&#xff0c;所以升级了 Kong 版本到 3.1。Kong3.1支持使用 Python 语言的插件&#xf…

ubuntu中pip install cython_bbox报错

pip install cython_bbox报错 问题记录 pip install cython_bbox报错如下 Collecting cython_bboxUsing cached cython_bbox-0.1.3.tar.gz (41 kB)Preparing metadata (setup.py) ... errorerror: subprocess-exited-with-error python setup.py egg_info did not run succe…

Cython-bbox pip 安装报错

安装步骤 下载Cython_bbox源码&#xff0c;点击Download files下载。解压文件。打开setup.py&#xff0c;找到第31行&#xff0c;把其中extra_compile_args[’-Wno-cpp’]的替换为extra_compile_args{‘gcc’: [‘/Qstdc99’]}。保存改动&#xff0c;返回cython_bbox-0.1.3文件…

pysot-toolkit测试及对比

文章目录 前言1、环境搭建2、文件配置3、测试及对比3.1 单跟踪器测试3.2 多跟踪器对比 前言 pysot-toolkit是一款评估单目标跟踪性能的工具&#xff0c;可以计算OPE(One Pass Evaluation)下的Success和Precision、以及VOT(Visual Object Tracking)的性能指标Accuracy、Robustne…

Python加解密库——pycrypto(pycryptodome)

文章目录 简介安装方法一&#xff1a;Visual Studio方法二&#xff1a;pycryptodome&#xff08;推荐&#xff09; 初试公钥加解密对称加密非对称加密 数字签名哈希函数安全通信加密IO封装遇到的坑参考文献 简介 pycrypto 实现了哈希函数&#xff08;如 SHA256&#xff09;和加…

自制Python小工具(1)——Gadgets 0.1

文章目录 1. 前言2. Gadgets 0.1介绍2.1 使用过程概述 3. Gadgets 0.1功能实现3.1 创建文件3.2 功能编程3.2.1 安装3.2.2 导库3.2.3 定义函数并实现功能 3.3 主程序3.3.1 向用户问好并提供指示3.3.2 填入功能 3.4 装饰加载 4. 源码展示4.1 extract_music.py4.2 loading.py4.3 G…

Windows下安装pycocotools(本人亲测,可以解决)

Windows下安装pycocotools 1. 下载pycocotools的源码2. 安装python对应的VC3. 进行pycocotools的编译4. 测试安装是否成功 参考博客&#xff1a;原博客 由于windows下是不能直接使用conda install 或者pip install pycocotools&#xff0c;唉&#xff0c;不像linux系统&#x…

学习 PySOT(2)(PySOT-toolkit、对比、画图)

文章目录 前言一、pysot-toolkit准备工作1.所需环境要求2.文件配置3.运行配置&#xff08;对比算法&#xff09; 二、安装latex软件(win10系统)1.安装MiKTeX2.安装TexMaker3.配置TexMaker4.配置MiKTeX 三、运行eval.py画图1. 修改eval.py参数&#xff0c;运行2. 常见问题解决 前…

redis-exporter监控

文章目录 启动redis-export服务启动prometheus服务启动granfana服务测试报警 使用redis-exporter监控redis服务&#xff0c;并且使用prometheus收集数据&#xff0c;使用grafana展示数据。 监控报警利用alertmanager插件&#xff0c;报警信息发送钉钉消息。所使用的安装包可以 …

Zabbix实现对Redis的监控

Zabbix实现对Redis的监控 环境准备 五台机器&#xff1a; zabbix_agent 5.0 被动模式&#xff08;已安装&#xff09; Zabbix_java_gateway 5.0 &#xff08;已安装&#xff09; 10.0.0.7 MariaDB-10.4.22&#xff08;已安装&#xff09; zabbix_server 5.0&#xff08;已安…