檢查 R 中的變數資料型別

Sheeraz Gul 2023年1月30日
  1. 檢查 R 中的變數資料型別
  2. 檢查 R 中一個變數的資料型別
  3. 檢查 R 中資料框中每個變數的資料型別
  4. 檢查變數是否是 R 中的特定資料型別
檢查 R 中的變數資料型別

有不同的方法來檢查不同資料型別的變數的資料型別。本教程演示如何檢查 R 中變數的資料型別。

檢查 R 中的變數資料型別

R 中的許多方法可用於檢查變數的資料型別。這些方法在下面給出。

# for checking data type of one variable
typeof(x)
class(x)

# for checking the data type of every variable in a data frame
str(dataframe)

# for checking if a variable is a specific data type
is.factor(x)
is.numeric(x)
is.logical(x)
is.complex(x)
is.integer()

讓我們一一嘗試每種方法。

檢查 R 中一個變數的資料型別

有兩種方法可以檢查單個變數或物件的資料型別,typeof() 方法和 class() 方法。這兩種方法都採用一個引數,即變數或物件。

讓我們為這兩種方法嘗試一個示例。

#define variable Demo
Demo <- c("Delftstack1", "Delftstack2", "Delftstack3", "Delftstack4", "Delftstack5", "Delftstack6")

#check the data type of Demo using typeof method
print('The output for typeof method:')
typeof(Demo)

#check the data type of Demo using the class method
print('The output for class method:')
class(Demo)

上面的程式碼將使用 typeof() 方法檢查變數型別,然後使用 class() 方法。見輸出:

[1] "The output for typeof method:"
[1] "character"

[1] "The output for class method:"
[1] "character"

檢查 R 中資料框中每個變數的資料型別

str() 方法用於檢查資料框中每個變數的資料型別。它接受一個引數,即資料幀。

參見示例:

#create a data frame
Delftstack <- data.frame(Name=c('Jack', 'John', 'Mike', 'Michelle', 'Jhonny'),
                         LastName=c('Danials', 'Cena', 'Chandler', 'McCool', 'Nitro'),
                         Id=c(101, 102, 103, 104, 105),
                         Designation=c('CEO', 'Project Manager', 'Senior Dev', 'Junior Dev', 'Intern'))

#View the dataframe
Delftstack

#Check the data type of every variable in dataframe
str(Delftstack)

上面的程式碼檢查資料框中每個變數的資料型別。見輸出:

      Name LastName  Id     Designation
1     Jack  Danials 101             CEO
2     John     Cena 102 Project Manager
3     Mike Chandler 103      Senior Dev
4 Michelle   McCool 104      Junior Dev
5   Jhonny    Nitro 105          Intern

'data.frame':	5 obs. of  4 variables:
 $ Name       : chr  "Jack" "John" "Mike" "Michelle" ...
 $ LastName   : chr  "Danials" "Cena" "Chandler" "McCool" ...
 $ Id         : num  101 102 103 104 105
 $ Designation: chr  "CEO" "Project Manager" "Senior Dev" "Junior Dev" ...

檢查變數是否是 R 中的特定資料型別

有幾種方法可以檢查變數是否屬於特定型別,每種資料型別都有一種方法。每個方法都將變數作為引數並返回 TrueFalse

讓我們嘗試一個示例來展示每種方法。

#create variables
a <- 3

b <- 5.3

c <- "Delftstack"

d <- TRUE

e <- factor(c('A', 'B', 'C', 'D'))

i <- as.integer(a)


## Check types of variables

print(is.numeric(a))

print(is.complex(b))

print(is.character(c))

print(is.logical(d))

print(is.factor(e))

print(is.integer(i))

上面的程式碼為每種型別建立一個變數,並檢查它是否具有相應的資料型別。見輸出:

> ## Check types of variables

[1] TRUE

[1] FALSE

[1] TRUE

[1] TRUE

[1] TRUE

[1] TRUE

程式碼顯示變數 b 不是複雜型別變數;所有其他變數都具有與方法相同的資料型別。

我們還可以使用這些方法來檢查資料框列的資料型別。參見示例:

#create a data frame
Delftstack <- data.frame(Name=c('Jack', 'John', 'Mike', 'Michelle', 'Jhonny'),
                         LastName=c('Danials', 'Cena', 'Chandler', 'McCool', 'Nitro'),
                         Id=c(101, 102, 103, 104, 105),
                         Designation=c('CEO', 'Project Manager', 'Senior Dev', 'Junior Dev', 'Intern'))


#check if Name column is character
is.character(Delftstack$Name)

#check if LastName column is complex
is.complex(Delftstack$LastName)

#check if the Id column is numeric
is.numeric(Delftstack$Id)

上面的程式碼檢查資料框的一列是否是特定型別的資料。見輸出:

> #check if Name column is character
[1] TRUE

> #check if LastName column is complex
[1] FALSE

> #check if Id column is numeric
[1] TRUE
作者: Sheeraz Gul
Sheeraz Gul avatar Sheeraz Gul avatar

Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.

LinkedIn Facebook