📜  R 编程中的数据处理

📅  最后修改于: 2022-05-13 01:55:26.424000             🧑  作者: Mango

R 编程中的数据处理

R 编程语言用于统计和数据分析目的。 R 编程的所有这些应用程序中经常使用数据的导入和导出。
R 语言能够读取不同类型的文件,例如逗号分隔值 (CSV) 文件、文本文件、Excel 工作表和文件、SPSS 文件、SAS 文件等。

R 允许其用户在一些预定义函数的帮助下顺利使用系统目录,这些函数将目录路径作为参数或返回用户正在处理的当前目录的路径。以下是 R 中的一些目录函数:

  • getwd():此函数用于获取 R 正在使用的当前工作目录。
  • setwd(): R中的这个函数用于改变当前工作目录的路径,目录的路径作为参数传递给函数。
    例子:
    setwd("C:/RExamples/")
    

    或者

    setwd("C:\\RExamples\\")
    
  • list.files():此函数列出当前工作目录中存在的所有文件和文件夹。

在 R 中导入文件

让我们在R中导入一些基本文件来学习导入数据文件的方法:

导入文本文件

在 R 语言中,可以使用read.table()函数读取文本文件。

要了解read.table()的所有参数,请在 R 中执行以下命令:

read.table(filename, header = FALSE, sep = "")

例子:
假设当前工作目录中存在一个文件,并且使用 R 编程,从该特定文本文件导入数据,文本文件的内容如下所示:

help("read.table")

值由空格分隔。

100 A a
200 B b
300 C c
400 D d
500 E e
600 F f

输出:

# Check current working directory
getwd()
  
# Get content into a data frame
data <- read.table("TextFileExample.txt", 
                    header = FALSE, sep = " ")
  
# Printing content of Text File
print(data)
  
# Print the class of data
print(class(data))

导入 CSV 文件

可以使用read.csv()函数在 R 中导入和读取逗号分隔值或 CSV 文件。

要了解read.csv()的所有参数,请在 R 中执行以下命令:

[1] "C:/Users/xyz/Documents"
   V1 V2 V3
1 100  A  a
2 200  B  b
3 300  C  c
4 400  D  d
5 500  E  e
6 600  F  f
[1] "data.frame"

例子:
假设当前工作目录中存在一个 csv 文件,文件内容如下所示:

read.csv(filename, header = FALSE, sep = "")

输出:

help("read.csv")

导入 Excel 文件

要读取和导入 excel 文件,需要“xlsx ”包才能使用read.xlsx()函数。要读取“.xls” excel 文件,需要使用“ gdata ”包才能使用read.xls()函数。

要了解read.xlsx()的所有参数,请在 R 中执行以下命令:

# Check current working directory
getwd()
  
# Get content into a data frame
data <- read.csv("CSVFileExample.csv", 
                  header = FALSE,sep = "\t")
  
# Printing content of Text File
print(data)
  
# Print the class of data
print(class(data))

例子:
假设当前工作目录中存在一个 xlsx 文件,文件内容如下所示:

[1] "C:/Users/xyz/Documents"
   V1 V2 V3
1 100 AB ab
2 200 CD cd
3 300 EF ef
4 400 GH gh
5 500 IJ ij
[1] "data.frame"

输出:

read.xlsx(filename, sheetIndex)

在 R 中导出文件

以下是将数据导出到 R 中的文件的一些方法:

  • 使用控制台
    R 中的cat()函数用于将对象输出到控制台。它也可以用作将输出重定向到特定文件。

    要了解cat()的所有参数,请在 R 中执行以下命令:

    read.xlsx(filename, sheetName)
    

    例子:

    help("read.xlsx")

    输出:
    上面的代码创建一个新文件并重定向cat()的输出。执行代码后文件的内容如下所示-

    # Install xlsx package
    install.packages("xlsx")
      
    library(xlsx)
      
    # Check current working directory
    getwd()
      
    # Get content into a data frame
    data <- read.xlsx("ExcelExample.xlsx", 
                       sheetIndex = 1, 
                       header = FALSE)
      
    # Printing content of Text File
    print(data)
      
    # Print the class of data
    print(class(data))
    
  • 使用sink()函数:
    sink()函数用于将cat()print()的所有输出重定向到给定的文件名。
    句法:
    [1] "C:/Users/xyz/Documents"
        X1  X2  X3
    1 1000 ABC abc
    2 2000 DEF def
    3 3000 GHI ghi
    4 4000 JKL jkl
    5 5000 MNO mno
    [1] "data.frame"
    

    要了解sink()的所有参数,请在 R 中执行以下命令:

    cat(..., file)
    

    例子:

    help("cat")

    输出:
    上面的代码创建一个新文件并重定向输出。执行代码后文件的内容如下所示-

    str = "World"
      
    # Redirect Output to file 
    cat("Hello, ", str, file = "catExample.txt")
    

写入 CSV 文件

可以使用write.csv()函数将矩阵或数据框对象重定向并写入 csv 文件。

要了解write.csv()的所有参数,请在 R 中执行以下命令:

Hello,  World

例子:

sink(filename) # begins redirecting output to file
.
.
sink()

输出:
上面的代码创建一个新文件并重定向输出。执行代码后文件的内容如下所示-