R入门

 

从大学开始接触eviews,虽然是商业软件,但是小巧易用,所以一直忽视作为开源的R。现在的项目已经离不开开源的支持了,所以还是得深入了解一下R,以下的文字大多为读《R for beginners》的随记。

 

 

基础

ls()显示内存中的对象

rm()删除内存中对象,rm(list=ls())删除全部

?lm显示帮助

help(lm)帮助

getwd()获取当前工作目录

setwd("C:/data")改变工作目录

从外部文件中读取数据

mydata<-read.table("test.data"), 返回的是一个数据框

scan()返回一个数值型向量

read.fwf()用于读取固定宽度格式的数据

存储数据

write(变量,"file.txt")

 

R Java API

R本身没有提供Java的API,有一个开源项目rJava在做这个工作,http://www.rforge.net/rJava/

 

3.4 产生序列:

x <- 1:30

seq(1,5,0.5) 递增数字

seq(length=9,from=1,to=2)

rep(1,30) 重复数字

sequence(5:4)

sequence(c(10,5))

sequence的规律看结果

gl() 生成不同水平/层次数据

gl(3,5,label=c("高","中","低"))

expand.grid()创建一个数据框

expand.grid(h=c(60,80),w=c(100,300),sex=c("M","F"))

 

3.5.1数据结构:

向量(Vector),同Java的Vector类似,用 x <- numeric(3)这种形式创建一个vector,之后通过x[1] <-3 来修改。还可以放logical(),character()。向量包含两个参数:mode类型,length长度

因子(Factor),不仅包括分类变量本身还包括变量不同的可能水平。

创建因子:factor(1:3,levels=1:5),factor(1:3,lables="a","b","c"),factor(1:5, exclude=4)

levels(ff)提取水平。 level水平做何解释?

 

矩阵

实际上是有一个附加属性维数dim的向量。

创建矩阵:

 matrix(1:6,2,3)

另一种方法:

x<-1:15

dim(x)<-c(5,3)

x已经变成了矩阵

 

数据框(Data Frame)

可以由read.table间接创建,也可以用函数data.frame创建

x<-1:4 ; M<-c(10,35)

df<-data.frame(x,M)

 

列表list

x<-1:4,y<-c(10,35)

list(x,y) 两个序列

 

时间序列(time-series)

ts(1:10,start=1999)

ts(1:10,start=1999,frequency=12)

ts(1:10,start=1999,frequency=12,start=c(2001,3))

 

表达式expression

eval()对表达式求值

有些函数可以以表达式作为参数,如D()求偏导数函数

D(exp1,"x")表示对x求偏导

 

3.5.2类型转换

as.numeric,as.logical,as.character

 

3.5.3运算符

== 分单个比较,整体比较实用identical和all.equal

x<-1:3;y<-1:3

x==y

identical(x,y);all.equal(x,y)

all.equal比较近似相等,identical完全相等

 

3.5.4下标系统

下标可以是向量

x<-1:5

从矩阵取值、设置使用下标时别忘了逗号

x<-matrix(1:6,3,2)

x[,2]<-c(11,12,13)

x[,1]默认返回的是向量,x[,1,drop=FALSE]返回的是一个3行1列矩阵

下标为负数表示不显示某个位置的值,如x[1]表示不显示矩阵1行1列那个值,x[-1,]表示不显示第1行

对于向量、矩阵和数组,下标还可以是比较运算表达式

如x[x>=5] <-20,将把矩阵中>=5的值替换成20

下标还可以是logical类型的FALSE或TRUE,TRUE则显示,FALSE则不显示

 

3.5.5对象的名称

names,colnames,rownames,dimnames

 

3.5.6数据编辑器

data.entry(x)

 

3.5.7常用函数和数学运算

c()连接对象

手工输入序列 x <- c(1,2,3)

 

向量可以进行常规的算术运算

x<-1:4;y<-rep(1,4)

z<-x+y

不同长度的向量也能相加,最短的向量将被循环使用。

 

3.5.8矩阵计算

rbind()上下合并矩阵

cbind()左右合并矩阵

x<-matrx(1,2,2);y<-matrix(2,2,2)

x %*% y 矩阵乘积

t(x)矩阵转置

diag()获取矩阵的对角元,设置矩阵的对角元,产生对角矩阵

diag(c(10,20,30),3)

solve()矩阵的逆

qr()分解矩阵

eigen()计算特征值和特征向量

svd()奇异值分解

 

R绘图

首先也要加载绘图设备,在Windows系统下用x11(),windows(),pdf()等加载

关闭设置dev.off()

设备列表:dev.list()

 

两种绘图函数:

高级绘图函数high-level plotting functions 创建一种新图形

低级绘图函数low-level plotting functions 在现存图形上添加元素

绘图参数graphical parameters控制绘图选项

 

layout() 等间隔分配子窗口

layout.show(4)显示4四格

 

绘图参数在绘图之前先设定好。

pch符号:pch(plotting character),用0:25表示26个标识

plot(),以坐标轴画图

plot(x,y,type),

type有

"p" for points, 

"l" for lines, 

"b" for both, 

"c" for the lines part alone of "b", 

"o" for both ‘overplotted’, 

"h" for ‘histogram’ like (or ‘high-density’) vertical lines, 

"s" for stair steps, 

"S" for other steps, see ‘Details’ below, 

"n" for no plotting

如何做密度曲线

常用办法:做出x的一个序列,然后做出dfunction(x),fuction指各种概率分布。如

x=seq(-3,3,0.05)

plot(x,dnorm(x),type="l")

lines(x,dt(x,1))

 

 

R的统计分析

需要严重补充

 

 

R编程

 

一般将程序保存为.R后缀文件,如果有语法错误则在运行时会指出哪行有错误。

可以通过source("test.R")来运行

在R运行界面中如果输入{ 则R一直等待 }的出现才结束本条语句

 

在R中显式的运行循环( for in,while等)效率是很低的,所以尽可能通过其他方式来避免显式循环,可选的方式有:

逻辑索引向量替代,如y[x%%2==0] <- 0

apply(), 如 apply(X,2,mean), 第二个参数1表示对行操作,2表示对列操作,这里表示对矩阵的列做均值计算。

lapply()用于对list对象进行操作

sapply() 更为灵活的一个apply,可以接受向量或者矩阵作为主要参数

 

自定义函数

myfunc <- function(arg1,arg2...) {

}

定义好了函数之后,可以通过source("myfunc.R")来加载,或者在启动R的时候加载,需要在.RData中定义,或者在.Rprofile中定义

 

 

 

R语言入门班 感谢: 吴明昊老师 Swirl包作者 《Elegant Graphics for Dataanlysis》书作者 《R Graphics Cookbook》书作者 第一课 R初体验(12 h)1、安装R2、安装RStudio3.在RStudio下输入以下命令:install.packages("swirl")安装Swirl4、调用Swir 阅读详情

相关推荐

R语言作图入门——软件安装,数据导入

R软件安装,数据导入

生信了 5072

R语言—90分钟从入门到精通

R语言—90分钟从入门到精通1. 初识R1.1 安装R2. 常见的数据类型及其转换2.1 几种常见的数据类型2.2 检查数据类型2.3 强制数据类型转换2.4 特殊的数据类型3. 数据结构3.1常见的几种数据结构3.2 函数3.3 对象4. 句法结构4.1 if 条件判断语句导出与导入导出导入 1. 初识R 1.1 安装R 2. 常见的数据类型及其转换 2.1 几种常见的数据类型 数据类型...

zq769274630的博客 5万+

R编程入门

在R中两个类型不一致的向量比较,内部有一个转换机制,将其中一个向量的类型转换为另一个向量的类型,至于保留哪个向量的类型,转换哪个向量的类型,其中有一个规则。这个决定了,如果add_f中有一个变量x在learn_r中不存在,而在r_fun中存在,那么add_f函数可以用到这个x。由于基本数据类型是向量、列表等,函数的参数要始终保存警惕,传入的并不是一个值,而是一个向量。当然R底层肯定有具体的数据类型,但是呢,在用R的时候不用考虑底层,考虑R的上层语法就好。逻辑测试、取子集,都是R中很强大的功能,向量化很强。

zhouwensmile的博客 1026

R语言系列1——R语言基础:入门篇

R语言,作为一种统计分析和图形表示的强大工具,自20世纪90年代初问世以来,已广泛应用于数据分析、生物信息学、统计学习以及金融领域等多个方面。它不仅拥有强大的数据处理能力,还拥有丰富的包库支持,能够满足各种统计分析的需求。

theskylife的博客 9175

使用 R 语言中的 expand.grid 函数生成所有组合

在 R 语言中,expand.grid 函数是一个非常有用的工具,它可以用于生成多个向量的所有组合。本文将介绍如何使用 expand.grid 函数来获得所有组合,并提供相应的源代码示例。它会返回一个数据框,其中包含了所有输入向量的组合。在本文中,我们介绍了如何使用 R 语言中的 expand.grid 函数来生成所有组合。无论是进行参数网格搜索还是生成实验设计,expand.grid 函数都是一个非常有用的工具。我们可以使用 expand.grid 函数生成所有参数的组合,并进行后续的模型训练和评估。

ByteJolt的博客 1027

R语言从入门到精通之【R语言的使用】

本章介绍了R语言的基本使用方法,并提供了简单的示例,以便更好地了解R。

qingchen98的博客 1507

R语言:expand.grid() 函数解析

expand.grid() 构造一个数据框,将各参数的各水平完全搭配。 示例: type=c("A", "M") trend=c("N","A", "M") seasonal=c("N","A","M") hw_grid <- expand.grid(type,trend,seasonal) print(hw_grid) ...

满腹的小不甘 1万+

R语言入门指南及示例代码

R语言是一种广泛使用的数据分析和统计建模语言。本文将介绍R语言的基本概念和语法,并提供一些示例代码帮助您入门。以上是对R语言的简要介绍和示例代码。R语言具有丰富的功能和社区支持,可用于各种数据科学任务。希望本文能够帮助您入门R语言,并开始进行数据分析和统计建模工作。R语言使用类似于其他编程语言的语法,但有一些特定的数据类型和操作符。注意:本文提供的示例代码仅用于演示目的,请根据您的实际需求进行相应的修改和扩展需求进行相应的修改和扩展。首先,您需要安装R语言和RStudio集成开发环境。

2301_79331421的博客 514

R语言——基本操作(一)

查看所有历史记录,比直接使用 ↑ 查找更方便中断操作,可中断未完成的操作(未完成回车后是 + ),也可以清空命令。清空屏幕显示R studio中所有的快捷操作。

Billie使劲学的博客 1万+

Win10管理员权限的‘暗门’:从mmc.exe被阻止,聊聊UAC与自动提权那些事儿

本文深入解析Windows 10中UAC(用户账户控制)与自动提权机制,探讨mmc.exe被阻止的深层原因及解决方案。从UAC工作原理到自动提权机制,再到具体诊断与修复步骤,帮助用户理解并解决权限管理问题,同时平衡安全性与便利性。

weixin_30521161的博客 420

疫情数据分析的“核武器”!JHU CSSE COVID-19数据集超深度解析与实战指南(附代码)

在面对这场没有硝烟的战争时,除了医护人员在前线与病毒搏斗,还有一群默默的英雄——数据科学家和分析师,他们利用手中的“数据武器”,昼夜不停地监测、分析、预测疫情走势,为政府决策、资源调配、公众科普提供了至关重要的支撑。同时,由于某些国家(如美国、加拿大、澳大利亚、中国等)的数据细化到省/州级别,为了得到国家层面的总数据,我们需要按国家和日期进行聚合。正是在这样的背景下,经过这些步骤,我们已经得到了一个包含了累计数据、每日新增数据和活跃病例数的完整数据集,可以开始进行深入的分析和可视化了!

wylee的博客 1167

R 快速入门

这一年优快云帮我解决好多问题,我决定把我整理的正在上的R语言编程的笔记上传,也回馈社会,虽然总结的挺垃圾的。 像一个正经博主一样起了一个系列式的名字,还不知道自己能写满几篇。 下面的思维导图是我上的第一次课的主要内容R的快速入门。 ...

weixin_45529837的博客 1718

lammps建模(电解液)opls-aa力场的基本流程

lammps建模(电解液)opls-aa力场的基本流程

syj0922的博客 2134

R 语言入门

R语言入门 Author:tony R语言是用于统计分析、绘图的语言和操作环境。它是一个自由、免费、源代码开放的软件,与MATLAB一样,也是一个用于统计计算和统计制图的优秀工具。 本博客致力于推广并领广大编程、建模爱好者入门。 赋值 R中使用"=“与”<-“进行赋值,其中”<-"快捷键是alt + -. >a <- 1 >b <- 2 a+b=3 向量 向量是 R 语言中最基本的数据类型,在 R 中没有单独的标量 > a <- c(1,3,4) >

沃若的博客 1547

TI IWR 6843 ISK 毫米波雷达开箱测试

TI IWR6843 ISK毫米波雷达上手体验,教程十分详细,对于新手很友好。

qq_57061492的博客 4039

Unity 热更新技术 | (二) AssetBundle - 完整系列教程学习

开始学习热更新方面系列知识,就从这一篇开始吧! 本系列教程 会从热更新基本概念出发,详细介绍热更新相关的全套知识点。 如热更新技术基本原理、热更新主流方案、AssetBundle系列教程、Lua语言编程、Lua与Unity交互教程、Xlua框架使用、热更新实战教程等方面。 热更新作为一个开发者必备技能,如果想学习的话,可以从现在开始了哦~ 接下来从 AssetBundle - 完整系列教程学习 开始学习吧!

努力前行,总会成为自己心中的那道光 1万+

R语言入门课| 02 R及Rstudio的下载与安装

R语言是一种专门为统计分析、数据可视化和计算而设计的编程语言,广泛应用于各个领域。R语言支持各种统计分析方法,如线性回归、方差分析、聚类分析等,同时也能够进行复杂的图形和数据可视化。R语言凭借其开源、免费、工具包丰富、数据处理能力强、可视化丰富的特性在。

weixin_47195452的博客 1107

Leads、SDR、MQL、SQL、L2C术语概念,线索创建与清洗、线索分级模型、线索流转策略、线索的统计与分析

CRM中的“Leads”是什么?笔者在文中不仅较为全面地介绍了相关术语概念,还分析了线索的创建与清洗、线索的分级模型、线索流转策略以及线索的统计与分析。

盼盼学士 5960

【0基础强力推荐】R语言快速入门

文章目录前言一、R语言入门1.基本语法2.R包的安装3.R包的使用4.获取帮助5.内置数据集6.向量7.向量索引8.向量运算9.矩阵10.因子11.数据框12.缺失值13.读取数据 前言 R是用于统计分析、绘图的语言和操作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。 一、R语言入门 1.基本语法 2.R包的安装 3.R包的使用 4.获取帮助 5.内置数据集 6.向量 7.向量索引 8.向量运算 9.矩阵 10.因子 11.数.

知不足而奋进,望远山而前行 2万+

Python实战日志_P4_图书馆Web API服务

目标:使用Flask将图书馆系统升级为RESTful API服务,掌握Web开发基础难度:⭐⭐⭐⭐☆预计学习时间:75分钟前置要求:已完成第3篇《个人图书馆管理系统》

qq_39436086的博客 84

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

R语言入门——常用函数50个

R语言函数入门50个基本函数0引言1、入门准备操作及函数1.1R版本介绍以及IDE的选择1.2IDE及其常用的快捷键2、空间操作以及纠错函数2.1 ? 、??、help、demo、example2.2 ls()2.3 getwd()、setwd()2.4 其他函数2.5大量数据空间管理3、常用数据结构的创建3.1向量的创建c、scan、rep、seq、:3.2矩阵的创建matrix、as.matrix,diag、data.matrix、cbind、rbind、t3.3 数据框的创建data.frame、as

统计学小王子的博客 2万+

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

R语言基础入门详解

R语言以其强大的数据处理和统计分析能力,在数据科学领域占据着重要的地位。通过本文的介绍,希望你能对R语言有一个基本的了解,并能够开始你的R语言学习之旅。R语言的学习是一个不断探索和实践的过程,希望本文能为你的旅程提供一个良好的起点。版权声明:本博客内容为原创,转载请保留原文链接及作者信息。参考文章R 语言教程 | 菜鸟教程R语言基础入门(学习笔记通俗易懂版)

ning的博客 2439

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

R语言必看(入门常识及风格指导)

原文链接:https://wklchris.github.io/R-learning-basic.html#%E9%A3%8E%E6%A0%BC%E6%8C%87%E5%...

大数据技术派 2164

R语言入门

现在对R感兴趣的人越来越多,很多人都想快速的掌握R语言,然而,由于目前大部分高校都没有开设R语言课程,这就导致很多人不知道如何着手学习R语言。对于初学R语言的人,最常见的方式是:遇到不会的地方,就跑到论坛上吼一嗓子,然后欣然or悲伤的离去,一直到遇到下一个问题再回来。当然,这不是最好的学习方式,最好的方式是——看书。目前,市面上介绍R语言的书籍很多,中文英文都有。那么,众多书籍中,一个生手应该从哪一

风口的猪2016 786
上一篇: 记两个excel常用公式
下一篇: 第一次做数独竟然做到一个多解的puzzle,R sudoku把另外一个解当作是错误
eyejavaeye
博客等级 码龄20年 74粉丝 10原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值