R语言——R函数、选项参数、数学统计函数(六)

news2024/11/19 18:43:04

目录

一、R函数

二、选项参数

三、数学统计函数

四、参考


一、R函数

1.lm()

lm()是R语言中经常用到的函数,用来拟合回归模型。它是拟合线性模型最基本的函数

lm()格式如下:

fit<-lm(formula,data)

其中,formula指要拟合的模型形式,data是一个数据框,包含了用于拟合模型的数据。结果对象(本例中是fit)存储在一个列表中,包含了所拟合模型的大量信息。表达式(formula)形式如下:

Y~X1+X2..Xn

举例,输入:

a<-c(1,2,3,4,5)
b<-c(2,4,6,8,10)
mydata<-data.frame(a,b)
fit<-lm(a~b,mydata)
summary(fit)

结果会显示:
在这里插入图片描述
所以a,b的关系可表示为:

a=0.000000000000001192+0.5*b

2.函数返回值及输入数据格式

        使用函数时要注意函数的返回值类型,比如有些函数返回值是列表,那就不能将其运用到使用向量的环境中。
        有些函数只能处理矩阵,有些函数既能处理矩阵也能处理数据框,使用函数时,需要知道每个函数的输入数据格式,否则就会出错。

输入数据类型

向量:sum,mean,sd,range,median,sort,order

矩阵或数据框:cbind,rbind

数字矩阵:heatmap

3.使用help(函数名)可以查看函数的帮助文档。

二、选项参数

一般的选项函数可以分为三部分:输入控制部分、输出控制部分以及调节部分

- 输入控制选项

常用选项:
file:接一个文件

data:一般指要输入一个数据框

x:表示单独的一个对象,一般都是向量,也可以是矩阵或者列表

x和y:函数需要两个输入变量

x,y,z:函数需要三个输入变量

formula:公式

na.rm:删除缺失值

- 输出控制选项:在R中,函数一般都是屏幕输出结果,每个函数的返回值也比较固定,所以输出控制选项并不多。

- 调节参数

调节参数

1.根据名字判断选项的作用

color:选项明显用来控制颜色

select:与选择有关

font:与字体有关

font.axis:就是坐标轴的字体

lty:是 line type

lwd:是 line width

method:软件算法

2.选项接受哪些参数

main:字符串,不能是向量

na.rm:TRUE 或者 FALSE

axis:side参数只能是1到4

fig:包含四个元素的向量

三、数学统计函数

1.概率统计函数
R概率分布:

d 概率密度函数
p 分布函数
q 分布函数的反函数
r 产生相同分布的随机数

正态分布函数:

dnorm(x,mean,sd,log)
pnorm(q,mean,sd,lower.tail,log.p)
qnorm(p,mean,sd,lower.tail,log.p)
rnorm(n,mean,sd)

与离散分布相关的函数:

与正态分布一样,在每种分布名称前面加上d、p、q、r就可以构成函数名。
如:

dgeom(x,prob,log=FALSE)
pgeom(q,prob,lower.tail=TRUE,log.p=FALSE)
qgeom(p,prob,lower.tail=TRUE,log.p=FALSE)
rgeom(n,prob)

runif(n):随机生成n个0到1之间的数。
runif(n,min=1,max=100):随机生成n个从1到100之间的随机数。

2.描述性统计函数
summary函数:

mycars <- mtcars[c("mpg","hp","wt","am")]
summary(mycars)

fivenum函数:与summary函数类似

fivenum(mycars$hp)

Hmisc包中的describe函数:

describe(mycars)

pastecs包中stat.desc函数:计算种类繁多的描述性统计量,参数x是一个数据框或时间序列

stat.desc(mycars)

psych包中describe函数:

describe(mycars)
describe(mycars,trim=0.1) #去掉10%的最低值最高值部分

很多情况下,我们需要对数据进行分组描述,这时候可以使用aggregate函数,aggregate函数能够对数据按照指定的分组信息进行统计,将分组信息通过一个列表指定出来:

library(MASS)
aggregate(Cars93[c("Min.Price","Price","Max.Price","MPG.city")],by=list(Manufacturer=Cars93$Manufacturer),mean)

aggregate函数的缺点是一次只能计算一个统计函数。
使用doBy包中的summaryBy函数:

summaryBy(mpg+hp+wt~am,data=mycars,FUN=mean)

使用psych包中的describeBy函数:

describeBy(mycars,list(am=mycars$am))

3.频数统计函数
(1)一维

mtcars$cyl <- as.factor(mtcars$cyl)
split(mtcars,mtcars$cyl)      #结果按照cyl分类
table(mtcars$cyl)     #频数统计
table(cut(mtcars$mpg,c(seq(10,50,10))))       #频数统计
prop.table(table(mtcars$cyl))      #频率值,即频数除以总数

(2)二维:返回列联表

library(vcd)
table(Arthritis$Treatment,Arthritis$Improved)      #统计两个量的频数,返回的结果是一个二维的列联表

或者

with(data = Arthritis,table(Treatment,Improved))

或者

xtabs(~Treatment+Improved,data = Arthritis)

(3)对列联表进行边际频数统计
边际频数统计:

x <- xtabs(~Treatment+Improved,data = Arthritis)
margin.table(x,1)      #按行进行边际频数统计
margin.table(x,2)      #按列进行边际频数统计

边际频率统计:

prop.table(x,1)      #按行进行边际频率统计
prop.table(x,2)      #按列进行边际频率统计

将边际频数的和添加到频数表中:

addmargins(x)
addmargins(x,1)
addmargins(x,2)

(4)三维

y <- xtabs(~Treatment+Improved+Sex,data = Arthritis)
ftable(y)    #将结果转换为一个评估式的列联表

四、参考

R语言入门与数据分析

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

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

相关文章

【QT 自研上位机 与 ESP32下位机联调>>>串口控制GPIO-基础样例-联合文章】

【QT 自研上位机 与 ESP32下位机联调&#xff1e;&#xff1e;&#xff1e;串口控制GPIO-基础样例-联合文章】 1、概述2、实验环境3、 自我总结4、 实验过程1、验证上位机QT程序1、下载样例代码2、修改qt程序3、运行测试验证 2、验证下位机ESP32程序1、下载样例代码2、更改ESP3…

Ubuntu18 安装chatglm2-6b

记了下Ubuntu18 上安装chatglm2-6遇到的问题。 环境&#xff1a;Ubuntu18.04 V100(显卡) nvcc 11.6 显卡驱动cudacudnnaniconda chatglm6b 的安装 网上有很多&#xff0c; 不记录 了。 chatglm2-6b 我从别的地方拷贝的&#xff0c; 模型也包含了。 遇到的问题&#xf…

【MMC子系统】三、MMC子系统框架

我的圈子&#xff1a; 高级工程师聚集地 我是董哥&#xff0c;高级嵌入式软件开发工程师&#xff0c;从事嵌入式Linux驱动开发和系统开发&#xff0c;曾就职于世界500强企业&#xff01; 创作理念&#xff1a;专注分享高质量嵌入式文章&#xff0c;让大家读有所得&#xff01; …

【SpringBoot开发】之商城项目案例(购物车相关操作)

&#x1f389;&#x1f389;欢迎来到我的CSDN主页&#xff01;&#x1f389;&#x1f389; &#x1f3c5;我是君易--鑨&#xff0c;一个在CSDN分享笔记的博主。&#x1f4da;&#x1f4da; &#x1f31f;推荐给大家我的博客专栏《SpringBoot开发之商城项目系列》。&#x1f3af…

GZ075 云计算应用赛题第4套

2023年全国职业院校技能大赛&#xff08;高职组&#xff09; “云计算应用”赛项赛卷4 某企业根据自身业务需求&#xff0c;实施数字化转型&#xff0c;规划和建设数字化平台&#xff0c;平台聚焦“DevOps开发运维一体化”和“数据驱动产品开发”&#xff0c;拟采用开源OpenSt…

Pytorch上采样

文章目录 Upsample特殊上采样 Upsample 所谓上采样&#xff0c;实则是一个插值过程。所以上采样对象在初始化时&#xff0c;需要指定一个插值类型&#xff0c;Upsample是torch.nn中最基础的上采样类&#xff0c;初始化参数如下 Upsample(sizeNone, scale_factorNone, modenea…

计算机组成原理 主存和CPU连接与主存提速方案

文章目录 主存与CPU的连接译码器线选法译码片选法总结 位拓展字拓展字位同时拓展 主存提速方案存储周期双端口RAM多模块存储器单体多字存储器多模块多体并行存储器存储器高位交叉编址低位交叉编址 主存与CPU的连接 #mermaid-svg-3wv6WzRP2BvKEHQZ {font-family:"trebuchet…

GZ075 云计算应用赛题第1套

2023年全国职业院校技能大赛(高职组) “云计算应用”赛项赛卷1 某企业根据自身业务需求,实施数字化转型,规划和建设数字化平台,平台聚焦“DevOps开发运维一体化”和“数据驱动产品开发”,拟采用开源OpenStack搭建企业内部私有云平台,开源Kubernetes搭建云原生服务平台,…

HTML5 和 CSS3 新特性(常用)

HTML5 的新特性 HTML5 的新增特性主要是针对于以前的不足&#xff0c;增加了一些新的标签、新的表单和新的表单属性等。 这些新特性都有兼容性问题&#xff0c;基本是 IE9 以上版本的浏览器才支持&#xff0c;如果不考虑兼容性问题&#xff0c;可以大量使用这 些新特性。 HTML…

Linux CPU 数据 Metrics 指标解读

过去从未仔细了解过使用 top 和 htop 等命令时显式的CPU信息&#xff0c;本文我们详解解读和标注一下各个数据项的含义&#xff0c;同时和 Ganglia 显式的数据做一个映射。开始前介绍一个小知识&#xff0c;很多查看CPU的命令行工具都是 cat /proc/stat 里的数据&#xff0c;所…

Element-ui自定义input框非空校验

1、vue自定义非空指令&#xff1a; main.js中自定义非空指令 当input框或下拉框中数据更新时&#xff0c;触发校验 Vue.directive(isEmpty,{update:function(el,binding,vnode){if(vnode.componentInstance.value""){el.classList.add("is-required");}e…

使用echarts的bmap配置项绘制区域轮廓遮罩

示例图 代码 <template><div id"map" style"width: 100%; height: 100vh"></div> </template><script> import * as echarts from "echarts"; import "echarts/extension/bmap/bmap"; export default…

软件测试/测试开发丨Pytest结合数据驱动

安装yaml pip install pyyaml pytest结合数据驱动yaml 工程目录结构 数据准备 读取excel文件 openpyxl库的安装 openpyxl库的操作 pytest结合csv实现数据驱动 csv文件介绍 pytest结合json实现数据驱动 最后感谢每一个认真阅读我文章的人&#xff0c;礼尚往来总是要有的&…

Halcon底帽运算bottom_hat

Halcon底帽运算 底帽运算的原理是用原始的二值图像减去闭运算的图像。闭运算的目的是对某些局部区域进行“填补”&#xff0c;如填空洞、使分离的边缘相连接等。而底帽运算正是用来提取这些用于填补的区域的。图&#xff08;a&#xff09;为从二值图像中提取出的亮的区域&…

RKE安装k8s及部署高可用rancher,证书在外面的LB(nginx中)

一 了解 Rancher 1 推荐架构 安装 Rancher 的方式有两种&#xff1a;单节点安装和高可用集群安装。因为单节点安装只适用于测试和 demo 环境&#xff0c;而且单节点安装和高可用集群安装之间不能进行数据迁移&#xff0c;所以推荐从一开始就使用高可用集群安装的方式安装 Ran…

Vue Cli inspect

Vue Cli inspect vue-cli-service inspect&#xff1a;可以使用 vue-cli-service inspect 来审查一个 Vue CLI 项目的 webpack config 使用方法&#xff1a; 1、输出在控制台&#xff1a;vue-cli-service inspect 2、输在在文件中&#xff1a;vue-cli-service inspect -->…

阿里云迁移AWS视频点播技术攻坚

文章目录 &#x1f437; 背景&#x1f9a5; 简述&#x1f425; Aws服务&#x1f99c; AWS CloudFormation&#x1f41e; 问题&#x1f409; 落地方案&#x1f989; Aws vs Aliyun&#x1f344; 避坑指南 &#x1f437; 背景 由于AWS整体成本略低于阿里云&#xff0c;公司决定将…

k8s集群部署Harbor镜像仓库

部署k8s集群参考 https://blog.csdn.net/m0_59933574/article/details/134936188?spm1001.2014.3001.5502https://blog.csdn.net/m0_59933574/article/details/134936188?spm1001.2014.3001.5502 安装Harbor 准备一台干净服务器&#xff0c;关闭防火墙与selinux 下载dock…

rime中州韵 inputShow lua Filter

在 rime中州韵 inputShow lua Translator 一文中&#xff0c;我们通过 inputShow.lua 定制了 inputShow_translator&#xff0c;这使得我们的输入方案可以将用户输入的字符透传到候选列表中来。如下&#x1f447;&#xff1a; &#x1f446;上图中我们在候选列表中看到了 inpu…

C# WinForm MessageBox自定义按键文本 COM组件版

c# 更改弹窗MessageBox按钮文字_c# messagebox.show 字体-CSDN博客 需要用到大佬上传到百度云盘的Hook类&#xff0c;在大佬给的例子的基础上改动了点。 应用时自己加GUID和ProgID。 组件实现&#xff1a; using System; using System.Collections.Generic; using System.L…