r语言(总)(我命油我不油天)

2023-11-15

  1. seq等间隔函数
seq(from,to,by,length.out,along.with)
from,to 为数值,表示开始和结束   
by为数值,表示间隔
length.out为数值,表示数列长度  
along.with为向量,表示数列长度与该向量长度相等

 

  1. rbind矩阵的合并
rbind()  对矩阵按行合并,要求子矩阵有相同列数
如: x1<-c(1,2,3,4,5,6)
        x2<-c("a","b","c","d","e","f")
        dim(x1)<-c(2,3)
        dim(x2)<-c(2,3)
        rbind(x1,x2)

 

  1. cbind矩阵的合并
cbind() 对矩阵按列合并,要求子矩阵有相同行数

 

  1. Factor函数

                                           

作用:将一个向量转换成因子

factor(x,levels,labels=levels,exclude=NA,ordered=is.ordered(x))

 

x:被转换的向量

levels:因子水平,可以为空

labels:各水平的名字,可以为空

exclude:从x中剔除的水平值

ordered:因子水平是否有序,TRUE 或者FALSE

例:

data<-c(1,2,3,3,1,2,2,3,1,3,2,1)   #数值向量

fdata<-factor(data)

grade<-c("优","良","差","差","优","良","良","差","优","差","良")   #字符向量

fgrade<-factor(grade)

 

  1. Rep重复函数
  1. rep(x,times,length.out,each,正整数向量)

x为数量、向量、数据对象          

times ,x重复的次数

length.out,重复后该向量的长度     

each,x中每个分量重复的次数

正整数向量,x中分量对象重复的次数

 

  1. matrix矩阵的生成

matrix(data, nrow, ncol, byrow, dimnames)

 

data:数据向量

nrow:矩阵的行数

ncol:  矩阵的列数

byrow:逻辑值,T表示行序为主序,F表示列序为主

dimnames:行、列名称,列表格式

如:

mdat<-matrix(c(1,2,3,4,5,6,7,8,9,0),nrow=2,byrow=T,dimnames=list(c("row1","row2"),c(“C1”,”C2”,”C3”,”C4”,”C5”)))

 

  1. apply对矩阵或数组按照维度做运算

apply(x,margin,fun)

 

x:数组或矩阵

margin:做运算的维度,1表示行,2表示列

fun:运算函数

 

如:A<-matrix(1:6,nrow=2);A        

sum(A);

sum(A[,2])       

apply(A,1,sum)

 

 

  1. tapply 不同水平指定函数的计算

tapply: 接入参数INDEX,对数据分组进行运算,就和SQL中的by group一样。

  1. tapply(x,index,fun,simplify=TRUE)

 

x:计算对象,向量  

index:与x长度相同,表示x的因子水平

fun:需要计算的函数  

simplify:返回值类型,T表示数组,F为列表

 

  1. paste将多个字符型向量连接成一个向量
paste(……,sep=“ ”,collapse=NULL),……为一个或多个对象,sep为分隔符

   如:paste("Happy","birthday")

       paste("Happy","birthday",sep=",")
       paste("信管2016",1:4,sep="-")
       paste(c("x","y"),rep(c(1,2),each=2))

 

 

 

 

  1. which

 

(1)逻辑向量中 which()判断分量中谁为T

(2) which(x, arr.ind = TURE)

which函数有一个已知value返回坐标的功能

  • x 是一个向量或者数组,可以是NA,但会省略掉,相当于FALSE。
  • arr.ind = TRUE 当x是数组时,返回数组索引。
 

 

  1. data.frame数据框函数
df<-data.frame(
                Name=c("Alice","Becka","James","Jeffrey"),
                Sex=c("F","F","M","M"),
                Age=c(13,13,12,13),
                Height=c(56.5,65.3,57.3,62.5),
                Weight=c(84,98,83,84))

 

  1. sample随机抽样

1.sample()函数

  1. sample(x,size,replace,prob)

x:目标数据                                        size:抽样数量的参数

replace:是否放回抽样,有放回为T,无放回F         prob:抽样的概率向量

  1. sample直接作用数据框,得到对列的抽样结果。

2.实现按行抽样

sub1<-sample(nrow(data_stu),5,replace = F)

getdata(data_stu,sub1)

 

  1. Table函数
统计因子向量中各水平出现的频数     table(fdata) 

 

  1. Function

funname<-function(arg_1,arg_1,……)expression

 

funname:函数名

arg_1,arg_2:函数参数

expression:表达式

 

  1. read.csv函数

需要将Excel文件转换成CSV(逗号分隔)文件

read.csv(file,header)

 

  1. read.table函数

read.table(file,header=True,sep=“”,row.names,col.names,skip,nrows)

 

file:读入数据文件名,数据以表格形式(纯文本文件)保存在文件中。

header:数据文件中有表头,则为T。

sep:数据分隔字符

row.names:行名

col.names:列名(变量名)

skip:读数据时跳过的行数,非负整数。

nrows:读取的行数

例:体会以下代码的含义

data_stu<-read.table("stu.txt",header=T)

data_stu

data_stu<-read.table("stu.txt",header=T,row.names = paste("201601",1:5,sep=""))

data_stu<-read.table("stu.txt",header=F,skip=2)

 

  1. Write函数

write(x,file,ncolumns,append)

x:需要写入文件的数据,通常为矩阵或向量

file:要保存的文件名

ncolumns:列数,字符默认1,数值默认5

append:逻辑变量,为T表示在原有文件添加数据,F表示新文件

 

  1. write.csv

将数据写为表格形式的文本文件或者CSV格式文件

write.table(x,file,append,sep)

sep:为分离数据的字符

 

  1. install.packages

install.packages()            打开安装包目录

install.packages(“包名”)    安装一个包

 

  1. Library

library(包名)   加载一个包

search()        查看已经加载的所有包

 

  1. data

data()获取数据集

 

  1. Names

names()命名函数

例子:

fruit<-c(5,10,8,11) ;

names(fruit)<-c("orange","banana","apple","peach")

 

  1. Str

Str()显示数据类型

 

  1. strata分层抽样

strata()函数

strata(data,stratanames,size,method,pik,description)

r(有放回)\pisson(泊松)\systematic(系统)data:待抽样数据集

stratanames:分层所依据的变量名

size:各层要抽出的观测样本数,顺序与变量水平出现次序相同

method:srswor(无放回)\srsw

pik:各样本抽样概率

description:是否输出含有各层基本信息的结果

 

 

  1. getdata
  2. plot绘图函数

 

可以绘制散点图、曲线图

  1. plot(x,y,type,……)

x,y:构成横坐标和纵坐标的对象   

type:图形类型,具体取值如表所示

type

绘点(默认值)

l

画线(line)

b

同时绘点和线,线不穿过点

c

仅画参数“b”所示的线

o

同时绘点和线,线穿过点

h

绘出点到横轴的竖线

s

绘出阶梯图(先横再纵)

S

绘出阶梯图(先纵再横)

n

空图,不绘任何图形

  1. plot(x,y,type,lty,pch,cex,lwd……)

lty:设置线条的格式,详细如图所示  

pch:设置点的格式,详细如图所示

cex:指定符号大小,默认大小为1,设置值为默认值的倍数    

lwd:设置线条宽度

 

  1. 文本属性参数

xlim,ylim:二维向量,x轴、y轴的范围

main:字符串,图形的标题

sub:字符串,图形的副标题

xlab:字符串,x轴的标签

ylab:字符串,y 轴的标签

 

  1. abline添加直线

abline(a,b,h,v,reg,coef,untf)

a,b:数值,a表示截距,b表示斜率

h:数值或向量,表示水平直线

v:数值或向量,表示竖直直线

coef:二维向量,分别表示截距和斜率

 

 

  1. text添加文字符号

text(x,y,labels,pos,cex,col,font,……)

x,y:数值向量,表示添加文字的坐标;

labels:数值或字符型向量,需要添加的文字或符号

adj:[0,1]区间的值,调整文字的位置

pos:数字,1,2,3,4分别表示原始位置的下、左、上、右位置,不能和adj参数同时使用;

font:不同字体,(1,2,3,4,5)

cex : 设置文字的大小

参数

描述

font

整数,字体样式,1=常规,2=粗体,3=斜体,4=粗斜体,5=符号字体

font.axis

坐标轴刻度文字的字体样式

font.lab

坐标轴标签的字体样式

font.main

标题的字体样式

font.sub

副标题的字体样式

ps

字体磅值

family

绘制文本时使用的字体族,serif(衬线)sans(无衬线)mono(等宽)

  1. expression数学符号与表达式
expression()

 

  1. Legend添加图例
legend(x,y,legend,border,lty,lwd,pch,……)

 

x,y:数值,表示图例的位置坐标;
legend:字符串或表达式,表示图例的内容
lty,lwd:数字,图例中线的类型与宽度
pch:数字,图例中符号的类
 
 
  1. Sweep 循环函数
sweep(x, MARGIN, STATS, FUN = "-", check.margin = TRUE, ...)
对数组的某一个或某几个维度减去(或FUN指定的操作)STATS

·  x:即要处理的原数据集

·  MARGIN:对行或列,或者数列的其他维度进行操作

·  STATS:需要对原数据集操作用到的统计量

·  FUN:操作需要用到的四则运算,默认为减法"-",当然可以修改成"+","*","/"即加、乘、除

·  check.margin:是否需要检查维度是否适宜的问题,默认为TRUE。如果为TRUE(默认值),则警告STATS的长度或尺寸是否与x的指定尺寸不匹配

例子:x1 <- sweep(df1[,3:5],2,MIN)

三到五列分别减最小值min

 

  1. Round取整

round(): 四舍五入取整

 

  1. Cut切割
cut()函数 输入为数值向量,输出为因子
cut(x,breaks,labels)
X:数值向量         
breaks:指定分割点数量的整数,或指定位置向量
labels:输出因子的水平的标签
例:将30名学生成绩分段,并统计每个分段的人数
data<-round(runif(30,0,100))
data_cut<-cut(data,breaks=c(0,60,70,80,90,100))
table(data_cut)
 
  1. subset取子集
subset(x,subset,select)
x:全部数据
subset:需要取出的子集
select:需要取出的列
 
  1. Mean均值
均值      mean(x)
 
  1. Boxplot箱线图
boxplot(x,formula,data,range,outline,col,horizontal)
x:向量、列表,数据框
formula:公式,形如y~grp,其中y为向量,grp为分组,常为因子
data:数据框,提供数据
range:数值,表示“触须”范围,默认值为1.5(最小值小于触须则标记为outlier)
outline:逻辑值,F表示不标明异常值点
horizontal:逻辑值,F表示绘制水平箱线图
 
  1. Par
  1. 图形参数设置方法

(1)在绘图函数中设置参数

如:plot(dose,a,type=“b”,col=“red)

(2)通过par()函数设置:参数值将一直有效

  1. 在par()函数中使用mfrow=c(nrows,ncols)创建图形矩阵

 

  1. Axis添加边

axis(side,at,labels,tick,line,pos,……)

side:数字,描述添加哪些位置的边。1,2,3,4分别表示下,左,上,右;

at:向量,添加标记的位置;

labels:逻辑,T表示在标记位置添加at的值,F表示不添加

 

  1. hist直方图

hist(x,breaks,freq,border,labels)

x:向量,直方图的数据

breaks:数值,向量或字符串,描述直方图的断点

freq:逻辑变量,T为频数,F为密度,默认为T

border:数字或字符串,外框的颜色

labels:逻辑变量,T表示标出频数或密度

 

  1. layout图形组合
  1. layout(mat)

mat为矩阵,指定要组合的多个图形的位置。

例子:attach(mtcars)

mat<-matrix(c(1,1,2,3),2,2,byrow=T)  #创建矩阵

layout(mat)                                 #设置组合图形

hist(wt);hist(mpg);hist(disp);detach(mtcars)

  1. layout(mat,widths,heights)

widths:各列宽度值组成的一个向量

heights:各行高度值组成的一个向量

例子:

mat<-matrix(c(1,1,2,3),2,2,byrow=T)  #创建矩阵

layout(mat,widths = c(3,1),heights=c(1,2))   #第1列宽度3,高度1,第2列的宽度1,高度2

hist(wt);hist(mpg);hist(disp)

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

r语言(总)(我命油我不油天) 的相关文章

  • java版本管理说明_Java JDK 版本管理工具jabba常用命令

    1 查询JDK 1 查看服务器上可下载安装的Jdk版本jabba ls remote 过滤查询的版本jabba ls remote zulu 1 8 60 jabba ls remote gt 1 6 45 lt 1 9 latest mi
  • 日志切割方法小结 [Logrotate、python、shell脚本实现 ]

    对于Linux系统安全来说 日志文件是极其重要的工具 不知为何 我发现很多运维同学的服务器上都运行着一些诸如每天切分Nginx日志之类的CRON脚本 大家似乎遗忘了Logrotate 争相发明自己的轮子 这真是让人沮丧啊 就好比明明身边躺着
  • 良许Linux

    mv 也是 Linux 下一个使用频率非常高的命令 但除了一些基本用法 你还知道它的哪些高级用法呢 1 基本用法 移动一个 多个文件 移动一个 多个目录 重命名文件 目录 这些都是很基本的用法 无需赘述 下面介绍一些更高级的用法 2 打印操
  • PCL点云库学习

    一 可用Point类型 PointXYZ 成员变量 float x y z PointXYZ是使用最常见的一个点数据类型 因为它只包含三维xyz坐标信息 这三个浮点数附加一个浮点数来满足存储对齐 用户可利用points i data 0 或
  • 初探 vue 插件开发

    开发一个 vue 插件 发布到npm并且 可以使用 npm 安装 vue list 查看当前在线的模板信息步骤如下 初始化项目 运行项目 npm install npm run dev 写插件在 src 文件夹下面建 lib 文件夹 用于存
  • GIT 工具下载及教程

    本着所有东西都可以本地化的思想 这里给大家介绍一下 Git 工具的下载以及 Git 书籍的下载 GIT 工具 GIT 工具 点击上面的链接后点击如下图所示的部分进行下载 GIT 书籍下载 GIT 中文教程书籍下载 点击上面的链接后点击如下图
  • Torch同时训练多个模型

    20230302 引言 在进行具体的研究时 利用Torch进行编程 考虑到是不是能够同时训练两个模型呢 而且利用其中一个模型的输出来辅助另外一个模型进行学习 这一点 在我看来应该是很简单的 例如GAN网络同时训练这个生成器和判别器 但是实际
  • 毕业设计-基于机器学习的图片处理图片倾斜校正

    前言 大四是整个大学期间最忙碌的时光 一边要忙着备考或实习为毕业后面临的就业升学做准备 一边要为毕业设计耗费大量精力 近几年各个学校要求的毕设项目越来越难 有不少课题是研究生级别难度的 对本科同学来说是充满挑战 为帮助大家顺利通过和节省时间
  • 95-36-210-ChannelHandler-系统Channel-TimeoutHandler1

    文章目录 TimeoutHandler TimeoutHandler 在开发TCP服务时 一个常见的需求便是使用心跳保活客户端 而Netty自带的三个超时处理器IdleStateHandler ReadTimeoutHandler和Writ
  • java.lang包介绍

    前言 java lang包是java语言的核心 它提供了java中的基础类 包括基本Object类 Class类 String类 基本类型的包装类 基本的数学类等等最基本的类 我们介绍一下Java 8中的java lang包 主要类如下图
  • Koa2学习之旅----结合 jqPaginator实现列表分页

    1 下载jqPaginator js 放在静态目录里面 2 在需要分页的地方引入jqPaginator js 3 在需要分页的地方加个空div div class pagination div 4 调用插件实例化 page jqPagina
  • Hadoop 2.x与3.x 22点比较:3.x将节省大量存储空间

    问题导读 1 Hadoop3 x通过什么方式来容错 2 Hadoop3 x存储开销减少了多少 3 Hadoop3 x MR API是否兼容hadoop1 x 一 目的 在这篇文章中 我们将讨论Hadoop 2 x与Hadoop 3 x之间的
  • BindIoCompletionCallback多线程下效率不如单线程高.

    BindIoCompletionCallback多线程下效率不如单线程高 2015 02 26 14 13 20 分类 C C IOCP TCPIP Socket Server cpp include stdafx h include Sa
  • 教你使用Python Statsmodel进行假设检验和线性回归

    如果你使用 Python 处理数据 你可能听说过 statsmodel 库 Statsmodels 是一个 Python 模块 它提供各种统计模型和函数来探索 分析和可视化数据 该库广泛用于学术研究 金融和数据科学 在本文中 我们将介绍 s
  • mac mysql忘记root密码解决方法

    通过homebrew方式安装的mysql mysql安装目录为 usr local Cellar mysql 5 7 去bin目录下在管理员权限下以安全方式启动mysql 即可不用密码登录 再修改root密码 具体步骤 cd usr loc
  • 解决vs2017无法安装问题

    解决vs2017无法安装问题 金庆的专栏 2018 11 从官网下载了 vs community 1600125377 1541561546 exe 但是运行安装时无法出现产品选择界面 查看 Temp 目录下的日志 没有发现错误 搜索一下
  • Xshell与Xftp打不开

    去服务里边把flexnet licensing service服务停止掉然后把启动类型改成禁止 看看是不是能打开了 再不行就重启一下 一定要看的干货 链接 除了接私单 写博客 做教程之外 程序员如何利用自身技术 实现躺着赚钱
  • dev express 知乎_开发环境模拟开启HTTPS服务

    主要解决的问题 开发环境中 使用只支持 https 服务的Web API 例如 navigator clipboard 操作系统剪贴板 navigator mediaDevices 访问相机或麦克风等媒体输入设备 等 解决 Cookie 的
  • 服务器 备案 文档,自己的服务器 备案

    自己的服务器 备案 内容精选 换一换 弹性云服务器与传统硬件服务器一样 可以部署任意业务应用 例如 邮件系统 WEB系统 ERP系统等 弹性云服务器创建成功后 您就可以像使用自己的本地PC或物理服务器一样 在云上使用弹性云服务器 云手游服务
  • 移动端自动化测试

    Java和安卓环境安装和配置 安装java JDK 并配置环境变量 1 新建环境变量 JAVA HOME 2 新建环境变量 CLASS PATH JAVA HOME lib dt jar JAVA HOME lib tools jar 注意

随机推荐

  • Maven项目一直运行不出来但又没有报错

    导致原因 1 数据库无法正常连接上 2 注册中心连接不上 3 逆向工程生成的mapper出错 多次生成 解决办法 在无法运行出来的项目中添加log4j文件 再次运行 根据运行结果进行修改
  • 安装Android Studio2020.3.1.26 和 过程中遇到的各种问题

    学习视频 https www bilibili com video BV1Jb4y187C4 安装Android Studio 官网 安装地址 https developer android google cn studio 翻到最下面 有
  • C语言函数指针几个应用场景

    点击蓝字 关注我们 因公众号更改推送规则 请点 在看 并加 星标 第一时间获取精彩技术分享 来源于网络 侵删 函数指针是一种非常强大的编程工具 它可以让我们以更加灵活的方式编写程序 在本文中 我们将介绍 6 个函数指针的高级应用场景 并贴出
  • 删除闭包

    var foo function var n 0 return add function return n
  • mySQL (关系型数据库管理系统)

    MySQL是一个关系型数据库管理系统 由瑞典MySQL AB 公司开发 目前属于 Oracle 旗下产品 MySQL 是最流行的关系型数据库管理系统之一 在 WEB 应用方面 MySQL是最好的 RDBMS Relational Datab
  • 用C语言完整实现12种排序方法

    1 冒泡排序 思路 比较相邻的两个数字 如果前一个数字大 那么就交换两个数字 直到有序 时间复杂度 O n 2 稳定性 这是一种稳定的算法 代码实现 void bubble sort int arr size t len size t i
  • Spring Boot实现文件上传和下载

    实现Spring Boot文件上传和下载的步骤 1 文件上传 在pom xml文件中添加依赖 spring boot starter web和spring boot starter thymeleaf 创建一个上传前端的页面 包括一个表单来
  • 什么是住宅ip,静态和动态怎么选?

    上文我们介绍了数据中心代理 这次我们来介绍下住宅代理ip 住宅代理ip分类两种类型 静态住宅代理和动态住宅代理 他们有什么区别又能用在什么场景呢 我们先从他们是如何运作开始 一 什么是住宅代理ip isp住宅代理ip我们称为真人住宅代理 地
  • spring IOC流程图

    ioc核心 DefaultListableBeanFactory private final Map
  • 点云检测笔记2022

    目录 激光雷达综述 2022以前的点云检测 自动驾驶中的坐标系 Complex YOLOv4 激光雷达综述 百度安全验证
  • 记公司同事的一次集体活动

    花田游记 李维俊 杭州大区 风和日丽暖 春意现昂然 花田一日游 同事尽相伴 借着浓浓的春意在3月26日杭州大区组织到海上花田烧烤游玩 告别了城市的喧嚣 没有了工作的压力围绕在我们身边的只有体现同事之间紧密团队精神的欢声笑语 上午我们团队一行
  • Python优雅的日志——loguru

    loguru RECOMMENDATION 影视 loguru 据小提莫观察 在python的使用者中 善于聪明 偷懒 以及不重复造轮子已经成为大家的共识 正所谓 人生苦短 我用python 作为python的爱好者 肯定是喜欢python
  • 【分析】segments的version_map_memory指标具体表示什么?

    ES有很多的监控指标 其中有一些指标官方解释的实在模糊 比如version map memory byte units Total amount of memory used by all version maps across all s
  • JAVA 集合之迭代器Iterator

    Java语言中的Iterator功能比较简单 只能单向移动 它的主要功能有四种 1 凡是实现Collections接口的数据结构都可以使用该方法 第一次调用Iterator的next 方法时 它返回序列的第一个元素 2 使用next 获得序
  • 前哈工大教授开发的ChatALL火了!可同时提问17个聊天模型,ChatGPT/Bing/Bard/文心/讯飞都OK...

    丰色 发自 凹非寺量子位 公众号 QbitAI 今天的你 是否还在几个聊天大模型之间 反复横跳 毕竟各家训练数据和方法不尽相同 擅长和不擅长的东西也都不一样 现在 不用这么麻烦了 有人开发了一个名叫 ChatALL 的应用 可以将你的提问同
  • CTFShow Web7&Web8

    这两道题都是版本控制工具直接部署到生产环境中造成的信息泄露 所以在此一起总结 题目中给出了明显的提示 版本控制很重要 但不要部署到生产环境更重要 和备份文件泄露的题型一样 笔者自己的感觉是这种题型最常用的工具就是dirsearch 因此选择
  • C++类的默认成员函数 —— 析构函数

    一 概念 析构函数 与构造函数功能相反 析构函数不是完成对对象本身的销毁 局部对象销毁工作是由编译器完成的 而对象在销毁时会自动调用析构函数 完成对象中资源的清理工作 二 特征 析构函数是特殊的成员函数 其特征如下 1 析构函数名是在类名前
  • 物联网、区块链、元宇宙和虚拟数字人离普罗大众有多远?

    首先 我们最早理解的数字人就是数字虚拟的一个假人 可能看起来很像二次元玩偶的样子 今天我觉得数字人是一种虚拟的数字身份 无所谓你的形象是仿真或是任何形象 包括你在现实中无法实现的形象 你在梦想中所渴望的概念 无论它是什么样的 它是你在另外一
  • 微信小程序,计算时分秒时间差

    shijiancha function faultDate completeTime var stime Date parse new Date faultDate var etime Date parse new Date complet
  • r语言(总)(我命油我不油天)

    seq等间隔函数 seq from to by length out along with from to 为数值 表示开始和结束 by为数值 表示间隔 length out为数值 表示数列长度 along with为向量 表示数列长度与该