R语言笔记(一)

文章目录

  • [一、R objects](#一、R objects)
  • [二、Types of data](#二、Types of data)
  • 三、Operators
    • 1、Operators
    • [2、Comparison operators](#2、Comparison operators)
    • [3、Logical operators](#3、Logical operators)
  • [四、Check types of data objects](#四、Check types of data objects)
  • [五、Convertion between data objects](#五、Convertion between data objects)
  • [六、R workspace](#六、R workspace)

一、R objects

Two basic types of things/objects: data and functions

  • Data : things like 6, "six", 6.000 6.000 6.000, and 6 6 6 6 6 6 \left \\begin{array}{ccc} 6 \& 6 \& 6 \\\\ 6 \& 6 \& 6\\end{array}\\right 666666
  • Functions : things like log, + (takes two arguments), < (two), sum (multiple), and mean (one)

二、Types of data

  • Booleans
  • Integers
  • Characters
  • Floating point numbers : an integer times a positive integer to the power of an integer, as in 3 × 1 0 6 3 \times 10^6 3×106 or 1 × 3 − 1 1 \times 3^{-1} 1×3−1
    • Double precision: 64 bits (8 bytes); Single precision: 32 bits (4 bytes)
  • Missing or ill-defined values : NA, NaN, etc.

三、Operators

1、Operators

  • Unary : take just one argument. E.g., - for arithmetic negation, ! for Boolean negation
  • Binary : take two arguments. E.g., +, -, *, and / (though this is only a partial operator). Also, %% (for mod), and ^ (again partial)
  • 一元运算符:只接受一个参数。例如,负号(-)用于算术取反,感叹号(!)用于布尔取反。
  • 二元运算符:接受两个参数。例如,加号(+)、减号(-)、乘号(*)和除号(/)(尽管除号只是部分运算符)。还有求余运算符(%%),以及幂运算(^)(同样是部分运算符)。
c 复制代码
# %/% 执行整除运算,即只保留商的整数部分,舍弃余数。
# %% 是取模运算符,它返回除法后的余数。
# %/% 和 %% 常配合使用来获取整数商和余数。

10 / 3   # 结果是 3.333333
10 %/% 3 # 结果是 3(商的整数部分)
10 %% 3  # 结果是 1(余数)

2、Comparison operators

These are also binary operators; they take two objects, and give back a Boolean.

c 复制代码
6 > 5
6 < 5
6 >= 7

3、Logical operators

These basic ones are & (and) and | (or).

c 复制代码
(5 > 7) & (6 * 7 == 42)
## [1] FALSE

(5 > 7) | (6 * 7 == 42)
## [1] TRUE

Note: The double forms && and || are different!


四、Check types of data objects

  • The typeof() function returns the data type
  • is.x() functions return Boolean values indicating whether the argument is of type x
c 复制代码
typeof(6)
## [1] "double"
is.double(7)
## [1] TRUE
## 解释:在 R 语言中,数字的默认类型是 双精度浮点数(double)。

is.na(7)
## [1] FALSE
is.na(7/0)
## [1] FALSE
## 解释:跟数学里不同,7/0 = Inf  

is.na(0/0)
## [1] TRUE

五、Convertion between data objects

  • as.x() (tries to) "cast" its argument to type x, to translate it sensibly into such a value
c 复制代码
as.character(5/6)
## [1] "0.833333333333333"

as.numeric(as.character(5/6))
## [1] 0.8333333

6 * as.numeric(as.character(5/6))
## [1] 5

5/6 == as.numeric(as.character(5/6))
## [1] FALSE

六、R workspace

Where do the variables live?

c 复制代码
ls()
## [1] "approx.pi" "circumference" "diameter"

Getting rid of variables:

c 复制代码
rm("circumference")
ls()
## [1] "approx.pi" "diameter"

rm(list=ls()) # Be warned! This erases everything
ls()
## character(0)
相关推荐
春涧草茶11 小时前
慢就是快16-1协程
开发语言·前端·python
Dovis(誓平步青云)11 小时前
启元 T1 Pro 人机相声搭档:语音-触摸双通道的启元机器人节奏引擎设计
开发语言·前端·javascript·microsoft·交互
做科研的周师兄11 小时前
【R语言实战】MixSIAR 氢氧同位素水源解析全流程:从混合空间校验到贝叶斯 MCMC 收敛诊断(后附完整代码)
java·大数据·开发语言
缘来是你远去是我12 小时前
本地个人笔记exe
笔记
.痞老板.13 小时前
java ee--计算机是如何工作的
java·开发语言·java-ee
奇树谦13 小时前
Qt Quick 图片加载与 GPU 纹理机制详解:QImage、QQuickTextureFactory、QSGTexture 与异步加载
开发语言·qt·系统架构
青梅味猪大肠13 小时前
【操作系统-60】临近适应算法
java·linux·开发语言·嵌入式硬件·算法·操作系统
FakeOccupational13 小时前
【电路笔记 STM32】RTC配置:晶振选择+闹钟Configuration+中断设置
笔记·stm32·实时音视频
迪康coolmu13 小时前
企业U盘管控落地实战:基于迪康端点安全一体化管理系统的移动存储安全实践
运维·人工智能·经验分享·笔记·安全·电脑
starzy199014 小时前
深入理解Scala可变Map:动态构建场景下的性能与设计权衡
开发语言·scala