# r的齐鲁风采群英会类型 # R中存在哪些齐鲁风采群英会类型？

R中有6种最常见的齐鲁风采群英会类型：

1. 数字
2. 整数
3. 复杂的
4. 特点
5. 因素
6. 逻辑

R中的齐鲁风采群英会集通常是这6种不同齐鲁风采群英会类型的组合。下面我们更详细地探索每个齐鲁风采群英会类型，除了齐鲁风采群英会类型“复杂”，因为我们专注于主要的齐鲁风采群英会类型，并且这种齐鲁风采群英会类型很少在实践中使用。

# 数字

R中最常见的齐鲁风采群英会类型是数字。如果值是数字，或者如果值包含小数，则变量或串将被存储为数字齐鲁风采群英会。例如，以下两个系列默认存储为数字：

``````# numeric series without decimals
num_data <- c(3, 7, 2)
num_data``````
``##  3 7 2``
``class(num_data)``
``##  "numeric"``
``````# numeric series with decimals
num_data_dec <- c(3.4, 7.1, 2.9)
num_data_dec``````
``##  3.4 7.1 2.9``
``class(num_data_dec)``
``##  "numeric"``
``````# also possible to check the class thanks to str()
str(num_data_dec)``````
``##  num [1:3] 3.4 7.1 2.9``

# 整数

``children``
``##   1 3 2 2 4 4 1 1 1 4``
``````children <- as.integer(children)
class(children)``````
``##  "integer"``

# 特点

The data type character is used when storing text, known as strings in R. The simplest ways to store data under the character format is by using `""` around the piece of text:

``````char <- "some text"
char``````
``##  "some text"``
``class(char)``
``##  "character"``

If you want to force any kind of data to be stored as character, you can do it by using the command `as.character()`:

``````char2 <- as.character(children)
char2``````
``##   "1" "3" "2" "2" "4" "4" "1" "1" "1" "4"``
``class(char2)``
``##  "character"``

Note that everything inside `""` will be considered as character, no matter if it looks like character or not. For example:

``````chars <- c("7.42")
chars``````
``##  "7.42"``
``class(chars)``
``##  "character"``

``````char_num <- c("text", 1, 3.72, 4)
char_num``````
``##  "text" "1"    "3.72" "4"``
``class(char_num)``
``##  "character"``

``````num_space <- c(1)
num_nospace <- c(1)
# is num_space equal to num_nospace?
num_space == num_nospace``````
``##  TRUE``
``````char_space <- "text "
char_nospace <- "text"
# is char_space equal to char_nospace?
char_space == char_nospace``````
``##  FALSE``

As you can see from the results above, a space within character data (i.e., within `""`) makes it a different string in R!

# 因素

``````gender <- factor(c("female", "female", "male", "female", "male"))
gender``````
``````##  female female male   female male
## Levels: female male``````

To know the different levels of a factor variable, use `levels()`:

``levels(gender)``
``##  "female" "male"``

By default, the levels are sorted alphabetically. You can reorder the levels with the argument `levels` in the `factor()` function:

``````gender <- factor(gender, levels = c("male", "female"))
levels(gender)``````
``##  "male"   "female"``

``````text <- c("test1", "test2", "test1", "test1") # create a character vector
class(text) # to know the class``````
``##  "character"``
``````text_factor <- as.factor(text) # transform to factor
class(text_factor) # recheck the class``````
``##  "factor"``

The character strings have been transformed to factors, as shown by its class of the type `factor`.

# 逻辑

A logical variable is a variable with only two values; `TRUE` or `FALSE`:

``````value1 <- 7
value2 <- 9

# is value1 greater than value2?
greater <- value1 > value2
greater``````
``##  FALSE``
``class(greater)``
``##  "logical"``
``````# is value1 less than or equal to value2?
less <- value1 <= value2
less``````
``##  TRUE``
``class(less)``
``##  "logical"``

It is also possible to transform logical data into numeric data. After the transformation from logical to numeric with the `as.numeric()` command, `FALSE` values equal to 0 and `TRUE` values equal to 1:

``````greater_num <- as.numeric(greater)
sum(greater)``````
``##  0``
``````less_num <- as.numeric(less)
sum(less)``````
``##  1``

Conversely, numeric data can be converted to logical data, with `FALSE` for all values equal to 0 and `TRUE` for all other values.

``````x <- 0
as.logical(x)``````
``##  FALSE``
``````y <- 5
as.logical(y)``````
``##  TRUE``