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)
相关推荐
kyle~2 分钟前
C++----函数指针与函数指针类型 返回值类型 (*类型名)(参数列表)
开发语言·c++
小陈phd11 分钟前
系统架构师学习笔记(二)——计算机体系结构之指令系统
笔记·学习·系统架构
努力中的编程者18 分钟前
二叉树(C语言底层实现)
c语言·开发语言·数据结构·c++·算法
大尚来也29 分钟前
PHP 反序列化漏洞深度解析:从原理利用到 allowed_classes 防御实战
android·开发语言·php
雕刻刀32 分钟前
ERROR: Failed to build ‘natten‘ when getting requirements to build wheel
开发语言·python
qq_4160187233 分钟前
高性能密码学库
开发语言·c++·算法
小碗羊肉41 分钟前
【从零开始学Java | 第十八篇】BigInteger
java·开发语言·新手入门
宵时待雨44 分钟前
C++笔记归纳14:AVL树
开发语言·数据结构·c++·笔记·算法
执笔画流年呀1 小时前
PriorityQueue(堆)续集
java·开发语言
山川行1 小时前
关于《项目C语言》专栏的总结
c语言·开发语言·数据结构·vscode·python·算法·visual studio code