变量可以存储不同类型的值,例如数字、字符等。这些我们可以在代码中使用的数据类型称为数据类型。例如,
x <- 123L
这里,123L 是整数数据。所以变量x的数据类型是integer。
我们可以通过打印x的类来验证这一点。
x <- 123L
# print value of x
print(x)
# print type of x
print(class(x))
输出
[1] 123 [1] "integer"
这里,x是integer数据类型的变量。
不同类型的数据类型
在 R 中,有 6 种基本数据类型
逻辑型数值型整型复数型字符型原始型
让我们逐一讨论这些 R 数据类型。
1. 逻辑数据类型
R 中的logical数据类型也称为布尔数据类型。它只能有两个值:TRUE和FALSE。例如,
bool1 <- TRUE
print(bool1)
print(class(bool1))
bool2 <- FALSE
print(bool2)
print(class(bool2))
输出
[1] TRUE [1] "logical" [1] FALSE [1] "logical"
在上面的例子中:
- bool1的值为
TRUE, - bool2的值为
FALSE。
在这里,当我们检查这两个变量的类型时,我们得到"logical"。
注意:您也可以用单个字母定义逻辑变量 - T代表TRUE,F代表FALSE。例如,
is_weekend <- F
print(class(is_weekend)) # "logical"
2. 数值数据类型
在 R 中,numeric数据类型表示所有带或不带小数的实数。例如,
# floating point values
weight <- 63.5
print(weight)
print(class(weight))
# real numbers
height <- 182
print(height)
print(class(height))
输出
[1] 63.5 [1] "numeric" [1] 182 [1] "numeric"
这里,weight和height都是numeric类型的变量。
3. 整型数据类型
integer数据类型指定没有小数点的实数值。我们使用后缀L来指定整数数据。例如,
integer_variable <- 186L
print(class(integer_variable))
输出
[1] "integer"
这里,186L是整数数据。所以当我们打印integer_variable的类时,我们得到"integer"。
4. 复数数据类型
complex数据类型用于在 R 中指定纯虚数值。我们使用后缀i来指定虚部。例如,
# 2i represents imaginary part
complex_value <- 3 + 2i
# print class of complex_value
print(class(complex_value))
输出
[1] "complex"
这里,3 + 2i是complex数据类型,因为它有一个虚部2i。
5. 字符数据类型
character数据类型用于在变量中指定字符或字符串值。
在编程中,字符串是一组字符。例如,'A'是单个字符,"Apple"是字符串。
您可以使用单引号''或双引号""来表示字符串。通常,我们使用
''用于字符变量""用于字符串变量
例如,
# create a string variable
fruit <- "Apple"
print(class(fruit))
# create a character variable
my_char <- 'A'
print(class(my_char))
输出
[1] "character" [1] "character"
这里,变量fruit和my_char都是character数据类型。
6. 原始数据类型
raw数据类型将值指定为原始字节。您可以使用以下方法将字符数据类型转换为原始数据类型,反之亦然
charToRaw()- 将字符数据转换为原始数据rawToChar()- 将原始数据转换为字符数据
例如,
# convert character to raw
raw_variable <- charToRaw("Welcome to Programiz")
print(raw_variable)
print(class(raw_variable))
# convert raw to character
char_variable <- rawToChar(raw_variable)
print(char_variable)
print(class(char_variable))
输出
[1] 57 65 6c 63 6f 6d 65 20 74 6f 20 50 72 6f 67 72 61 6d 69 7a [1] "raw" [1] "Welcome to Programiz" [1] "character"
在这个程序中,
- 我们首先使用
charToRaw()函数将字符串"Welcome to Programiz"转换为原始字节。
这就是为什么当我们打印raw_variable的类时,我们得到"raw"作为输出。
- 然后,我们使用
rawToChar()函数将raw_variable中的数据转换回字符形式。
这就是为什么当我们打印char_variable的类时,我们得到"character"作为输出。