R语言 从R程序的脚本中导出数据
到目前为止,使用R程序的操作都是在提示符/终端上完成的,并没有存储在任何地方。但是在软件行业中,大多数程序都是为了存储从程序中获取的信息而编写的。其中一种方式是将获取的信息存储在一个文件中。因此,可以对文件进行的两个最常见的操作是。
- 向R脚本导入数据
- 从R脚本中导出数据
从R脚本中导出数据
当一个程序被终止时,整个数据会丢失。储存在文件中,即使程序终止了,也会保留自己的数据。如果一个人需要输入大量的数据,那么输入这些数据将需要大量的时间。然而,如果一个人有一个包含所有数据的文件,他/她可以使用R的几个命令轻松地访问文件的内容。因此,这些文件可以以各种格式存储。它可以存储在.txt(tab-separated value)文件中,或以表格格式即.csv(comma-separated value)文件存储,也可以存储在互联网或云端。R提供了非常简单的方法来导出数据到这些文件。
导出数据到文本文件
存储文件的重要格式之一是文本文件。R提供了各种方法,人们可以将数据导出到文本文件。
- write.table() : R的基础函数write.table()可以用来将数据框或矩阵导出到文本文件。
语法:
write.table(x, file, append = FALSE, sep = ” “, dec = “.”, row.names = TRUE, col.names = TRUE)
参数:
x:一个要写入的矩阵或数据框。
file:一个字符,指定结果文件的名称。
sep:字段的分隔符,例如,sep = “\t”(用于标签分隔的值)。
dec:作为小数点分隔符的字符串。默认为”.”。
row.names:一个逻辑值,表示x的行名是否与x一起被写入,或者一个要写入的行名的字符向量。
col.names:一个逻辑值,表示x的列名是否与x一起被写入,或者一个要写入的列名的字符向量。
示例:
# R program to illustrate
# Exporting data from R
# Creating a dataframe
df = data.frame(
"Name" = c("Amiya", "Raj", "Asish"),
"Language" = c("R", "Python", "Java"),
"Age" = c(22, 25, 45)
)
# Export a data frame to a text file using write.table()
write.table(df,
file = "myDataFrame.txt",
sep = "\t",
row.names = TRUE,
col.names = NA)
输出:
- write_tsv() : 这种方法也用于在readr包的帮助下,将数据导出为制表符分隔(”\t”)的数值。
语法: write_tsv(file, path)
参数:
file:一个要被写入的数据框架
path:结果文件的路径
示例:
# R program to illustrate
# Exporting data from R
# Importing readr library
library(readr)
# Creating a dataframe
df = data.frame(
"Name" = c("Amiya", "Raj", "Asish"),
"Language" = c("R", "Python", "Java"),
"Age" = c(22, 25, 45)
)
# Export a data frame using write_tsv()
write_tsv(df, path = "MyDataFrame.txt")
输出:
将数据导出到csv文件
另一种流行的文件存储格式是csv(逗号分隔的值)格式。R提供了各种方法,人们可以将数据导出到csv文件。
- write.table() : The R base function write.table() can also be used to export a data frame or a matrix to a csv file.
语法:
write.table(x, file, append = FALSE, sep = ” “, dec = “.”, row.names = TRUE, col.names = TRUE)
参数:
x:一个要写入的矩阵或数据框。
file:一个字符,指定结果文件的名称。
sep:字段的分隔符,例如,sep = “\t”(用于标签分隔的值)。
dec:作为小数点分隔符的字符串。默认为”.”。
row.names:一个逻辑值,表示x的行名是否与x一起被写入,或者一个要写入的行名的字符向量。
col.names:一个逻辑值,表示x的列名是否与x一起被写入,或者一个要写入的列名的字符向量。
示例:
# R program to illustrate
# Exporting data from R
# Creating a dataframe
df = data.frame(
"Name" = c("Amiya", "Raj", "Asish"),
"Language" = c("R", "Python", "Java"),
"Age" = c(22, 25, 45)
)
# Export a data frame to a text file using write.table()
write.table(df,
file = "myDataFrame.csv",
sep = "\t",
row.names = FALSE,
)
输出:
- write.csv() : 这种方法推荐用于将数据导出到csv文件。它使用”. “作为小数点,使用逗号(”,”)作为分隔符。
示例:
# R program to illustrate
# Exporting data from R
# Creating a dataframe
df = data.frame(
"Name" = c("Amiya", "Raj", "Asish"),
"Language" = c("R", "Python", "Java"),
"Age" = c(22, 25, 45)
)
# Export a data frame to a text file using write.csv()
write.csv(df, file = "my_data.csv")
输出:
- write.csv2() : 这个方法与write.csv()很相似,但它用逗号(”,”)表示小数点,用分号(”;”)表示分隔符。
示例:
# R program to illustrate
# Exporting data from R
# Creating a dataframe
df = data.frame(
"Name" = c("Amiya", "Raj", "Asish"),
"Language" = c("R", "Python", "Java"),
"Age" = c(22, 25, 45)
)
# Export a data frame to a text file using write.csv2()
write.csv2(df, file = "my_data.csv")
输出:
- write_csv() : 这个方法也被用来在readr包的帮助下将数据导出为逗号分隔(”,”)值。
语法: write_csv(file, path)
参数:
file:一个要写入的数据框架
path:结果文件的路径
示例:
# R program to illustrate
# Exporting data from R
# Importing readr library
library(readr)
# Creating a dataframe
df = data.frame(
"Name" = c("Amiya", "Raj", "Asish"),
"Language" = c("R", "Python", "Java"),
"Age" = c(22, 25, 45)
)
# Export a data frame using write_csv()
write_csv(df, path = "MyDataFrame.csv")
输出: