R语言 对象

R语言 对象

每种编程语言都有自己的数据类型来存储数值或任何信息,因此用户可以将这些数据类型分配给变量并分别进行操作。
这些数据类型可以是字符、整数、浮点、长等。基于数据类型,内存/存储被分配给变量。例如,在C语言中,字符变量被分配1个字节的内存,整数变量被分配2或4个字节的内存,其他数据类型有不同的内存分配。
与其他编程语言不同,在R编程中,变量被分配给对象而不是数据类型。

对象的类型

在R语言中,有5种基本类型的对象。

向量

原子向量是R编程中对象的基本类型之一。原子向量可以存储同质的数据类型,如字符、双数、整数、原始、逻辑和复合。一个单元素变量也被称为向量。

例子

# Create vectors
x <- c(1, 2, 3, 4)
y <- c("a", "b", "c", "d")
z <- 5
  
# Print vector and class of vector
print(x)
print(class(x))
  
print(y)
print(class(y))
  
print(z)
print(class(z))
R

输出

[1] 1 2 3 4
[1] "numeric"
[1] "a" "b" "c" "d"
[1] "character"
[1] 5
[1] "numeric"
R

列表

列表是R编程中另一种类型的对象。列表可以包含异质的数据类型,如向量或其他列表。

例子

# Create list
ls <- list(c(1, 2, 3, 4), list("a", "b", "c"))
  
# Print
print(ls)
print(class(ls))
R

输出

[[1]]
[1] 1 2 3 4

[[2]]
[[2]][[1]]
[1] "a"

[[2]][[2]]
[1] "b"

[[2]][[3]]
[1] "c"

[1] "list"
R

矩阵

为了以二维数组形式存储数值,R中使用了矩阵。数据、行数和列数在matrix()函数中定义。

语法

matrix(data = NA, nrow = 1, ncol = 1, byrow = FALSE, dimnames = NULL)
R

例子

x <- c(1, 2, 3, 4, 5, 6)
  
# Create matrix
mat <- matrix(x, nrow = 2)
  
print(mat)
print(class(mat))
R

输出

     [, 1] [, 2] [, 3]
[1, ]    1    3    5
[2, ]    2    4    6

[1] "matrix"
R

因子

因子对象编码一个来自给定数据向量的独特元素(水平)的向量。

例子

# Create vector
s <- c("spring", "autumn", "winter", "summer", 
"spring", "autumn")
  
print(factor(s))
print(nlevels(factor(s)))
R

输出

[1] spring autumn winter summer spring autumn
Levels: autumn spring summer winter
[1] 4
R

数组

array() 函数用于创建n维数组。该函数以dim属性为参数,按照属性中指定的长度创建每个维度的所需长度。
语法

array(data, dim = length(data), dimnames = NULL)
R

例子

# Create 3-dimensional array
# and filling values by column
arr <- array(c(1, 2, 3), dim = c(3, 3, 3))
  
print(arr)
R

输出

,, 1

     [, 1] [, 2] [, 3]
[1, ]    1    1    1
[2, ]    2    2    2
[3, ]    3    3    3,, 2

     [, 1] [, 2] [, 3]
[1, ]    1    1    1
[2, ]    2    2    2
[3, ]    3    3    3,, 3

     [, 1] [, 2] [, 3]
[1, ]    1    1    1
[2, ]    2    2    2
[3, ]    3    3    3
R

数据框架

数据框架是R编程中的二维表格数据对象。数据框架由多列组成,每列代表一个向量。与矩阵不同,数据框架中的列可以有不同的数据模式。

例子

# Create vectors
x <- 1:5
y <- LETTERS[1:5]
z <- c("Albert", "Bob", "Charlie", "Denver", "Elie")
  
# Create data frame of vectors
df <- data.frame(x, y, z)
  
# Print data frame
print(df)
R

输出

  x y       z
1 1 A  Albert
2 2 B     Bob
3 3 C Charlie
4 4 D  Denver
5 5 E    Elie
R

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册