课程表

R语言 基础教程

R语言 图表

R语言 数据接口

R语言 统计示例

工具箱
速查手册

R语言 数据类型

当前位置:免费教程 » 程序设计 » R语言

通常,在使用任何编程语言进行编程时,您需要使用各种变量来存储各种信息。 变量只是保留值的存储位置。 这意味着,当你创建一个变量,你必须在内存中保留一些空间来存储它们。

您可能想存储各种数据类型的信息,如字符,宽字符,整数,浮点,双浮点,布尔等。基于变量的数据类型,操作系统分配内存并决定什么可以存储在保留内存中。

与其他编程语言(如C中的C和java)相反,变量不会声明为某种数据类型。 变量分配有R对象,R对象的数据类型变为变量的数据类型。尽管有很多类型的R对象,但经常使用的是:

  • 矢量
  • 列表
  • 矩阵
  • 数组
  • 因子
  • 数据帧

这些对象中最简单的是向量对象,并且这些原子向量有六种数据类型,也称为六类向量。 其他R对象建立在原子向量之上。

数据类型校验
Logical(逻辑型)TRUE, FALSE
  1. v <- TRUE
  2. print(class(v))

它产生以下结果 -

  1. [1] "logical"
Numeric(数字)12.3,5,999
  1. v <- 23.5
  2. print(class(v))

它产生以下结果 -

  1. [1] "numeric"
Integer(整型)2L,34L,0L
  1. v <- 2L
  2. print(class(v))

它产生以下结果 -

  1. [1] "integer"
Complex(复合型)3 + 2i
  1. v <- 2+5i
  2. print(class(v))

它产生以下结果 -

  1. [1] "complex"
Character字符'a' , '"good", "TRUE", '23.4'
  1. v <- "TRUE"
  2. print(class(v))

它产生以下结果 -

  1. [1] "character"
Raw(原型)"Hello" 被存储为 48 65 6c 6c 6f
  1. v <- charToRaw("Hello")
  2. print(class(v))

它产生以下结果 -

  1. [1] "raw"

在R编程中,非常基本的数据类型是称为向量的R对象,其保存如上所示的不同类的元素。 请注意,在R中,类的数量不仅限于上述六种类型。 例如,我们可以使用许多原子向量并创建一个数组,其类将成为数组。

Vectors 向量

当你想用多个元素创建向量时,你应该使用c()函数,这意味着将元素组合成一个向量。

  1. # Create a vector.
  2. apple <- c('red','green',"yellow")
  3. print(apple)
  4.  
  5. # Get the class of the vector.
  6. print(class(apple))

当我们执行上面的代码,它产生以下结果

  1. [1] "red" "green" "yellow"
  2. [1] "character"

Lists 列表

列表是一个R对象,它可以在其中包含许多不同类型的元素,如向量,函数甚至其中的另一个列表。

  1. # Create a list.
  2. list1 <- list(c(2,5,3),21.3,sin)
  3.  
  4. # Print the list.
  5. print(list1)

当我们执行上面的代码,它产生以下结果

  1. [[1]]
  2. [1] 2 5 3
  3.  
  4. [[2]]
  5. [1] 21.3
  6.  
  7. [[3]]
  8. function (x) .Primitive("sin")

Matrices 矩阵

矩阵是二维矩形数据集。 它可以使用矩阵函数的向量输入创建。

  1. # Create a matrix.
  2. M = matrix( c('a','a','b','c','b','a'), nrow = 2, ncol = 3, byrow = TRUE)
  3. print(M)

当我们执行上面的代码,它产生以下结果

  1. [,1] [,2] [,3]
  2. [1,] "a" "a" "b"
  3. [2,] "c" "b" "a"

Arrays 数组

虽然矩阵被限制为二维,但阵列可以具有任何数量的维度。 数组函数使用一个dim属性创建所需的维数。 在下面的例子中,我们创建了一个包含两个元素的数组,每个元素为3x3个矩阵。

  1. # Create an array.
  2. a <- array(c('green','yellow'),dim = c(3,3,2))
  3. print(a)

当我们执行上面的代码,它产生以下结果

  1. , , 1
  2.  
  3. [,1] [,2] [,3]
  4. [1,] "green" "yellow" "green"
  5. [2,] "yellow" "green" "yellow"
  6. [3,] "green" "yellow" "green"
  7.  
  8. , , 2
  9.  
  10. [,1] [,2] [,3]
  11. [1,] "yellow" "green" "yellow"
  12. [2,] "green" "yellow" "green"
  13. [3,] "yellow" "green" "yellow"

Factors 因子

因子是使用向量创建的r对象。 它将向量与向量中元素的不同值一起存储为标签。 标签总是字符,不管它在输入向量中是数字还是字符或布尔等。 它们在统计建模中非常有用。
使用factor()函数创建因子。nlevels函数给出级别计数。

  1. # Create a vector.
  2. apple_colors <- c('green','green','yellow','red','red','red','green')
  3.  
  4. # Create a factor object.
  5. factor_apple <- factor(apple_colors)
  6.  
  7. # Print the factor.
  8. print(factor_apple)
  9. print(nlevels(factor_apple))

当我们执行上面的代码,它产生以下结果

  1. [1] green green yellow red red red yellow green
  2. Levels: green red yellow
  3. # applying the nlevels function we can know the number of distinct values
  4. [1] 3

Data Frames 数据帧

数据帧是表格数据对象。 与数据帧中的矩阵不同,每列可以包含不同的数据模式。 第一列可以是数字,而第二列可以是字符,第三列可以是逻辑的。 它是等长度的向量的列表。
使用data.frame()函数创建数据帧。

  1. # Create the data frame.
  2. BMI <- data.frame(
  3. gender = c("Male", "Male","Female"),
  4. height = c(152, 171.5, 165),
  5. weight = c(81,93, 78),
  6. Age = c(42,38,26)
  7. )
  8. print(BMI)

当我们执行上面的代码,它产生以下结果

  1. gender height weight Age
  2. 1 Male 152.0 81 42
  3. 2 Male 171.5 93 38
  4. 3 Female 165.0 78 26
转载本站内容时,请务必注明来自W3xue,违者必究。
 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号