Package utils version 4.2.0
Usage
write.table(x, file = "", append = FALSE, quote = TRUE, sep = " ",
eol = "\n", na = "NA", dec = ".", row.names = TRUE,
col.names = TRUE, qmethod = c("escape", "double"),
fileEncoding = "")
write.csv(...)
write.csv2(...)
Arguments
参数【x】:要写入的对象,最好是矩阵或数据帧。如果不是,则尝试将其强制转换为数据帧。
参数【file】:命名文件的字符串或打开用于写入的连接。“”表示向控制台输出。
参数【append】:逻辑值。只有当参数【file】是一个字符串时才相关。如果为TRUE,则输出被追加到文件中。如果为FALSE,则覆盖该名称的任何现有文件。
参数【quote】:逻辑值(TRUE或FALSE)或数字向量。如果为TRUE,任何字符或因子列都将被双引号包围。如果是数字向量,则将其元素作为要引用的列的索引。在这两种情况下,如果书写行和列名,则将它们加引号。如果为FALSE,则不引用任何内容。
参数【sep】:字段分隔字符串。参数【x】的每行中的值由这个字符串分隔。
参数【eol】:在每行(行)末尾打印的字符。例如,eol = "\r\n"将在类unix操作系统上生成Windows的行尾,eol = "\r"将生成Excel:mac 2004所期望的文件。
参数【na】:用于数据中缺失值的字符串。
参数【dec】:用于数字列或复杂列中的小数点的字符串必须是单个字符。
参数【row.names】:要么是指示参数【x】的行名是否与参数【x】一起写入的逻辑值,要么是要写入的行名的字符向量。
参数【col.names】:指示参数【x】的列名是否要与参数【x】一起写入的逻辑值,或者要写入的列名的字符向量。
参数【qmethod】:一个字符串,指定在引用字符串时如何处理嵌入的双引号字符。必须是"escape" (write.table的默认值)之一,在这种情况下,引号字符将以C风格通过反斜杠转义,或者"double" (write.csv和write.csv2的默认值)之一,在这种情况下,它将被加倍。您可以只指定首字母。
参数【fileEncoding】:字符串:if non-empty声明要在文件(而不是连接)上使用的编码,以便字符数据可以在写入时重新编码。
参数【...】:要写的参数。Table: append, col.names, sep, dec和qmethod不能更改。
Details
如果表没有列,只有row.names = TRUE时才会写入行名,反之亦然。
实数和复数都以尽可能高的精度书写。
如果数据帧具有类似矩阵的列,这些列将被转换为结果中的多个列(通过as.matrix),因此字符color .names或数字引号应该引用结果中的列,而不是输入。默认情况下,这种类似矩阵的列不加引号。
数据框架中的任何列都是列表或具有类(例如,日期),将由适当的转换为。字符方法:默认情况下,这样的列不加引号。另一方面,矩阵的任何类信息都被丢弃,非原子(例如,列表)矩阵被强制为字符。
如果指定了引号,只有已转换为字符的列才会被引号。
dec参数仅适用于不需要转换为字符的列,因为它们具有类或属于类似矩阵的列(或矩阵)的一部分,特别是受I()保护的列。使用选项(“OutDec”)来控制这种转换。
在几乎所有情况下,数字量的转换都由选项“scipen”控制(参见选项),但内部等效为digits = 15。为了更好的控制,使用format来创建一个字符矩阵/数据帧,并调用write。在那上面。
这些函数每输出1000行检查一次用户中断。
如果文件是一个未打开的连接,则尝试打开它,然后在使用后关闭它。
要在Windows上编写unix风格的文件,请使用二进制连接,例如file = file("filename", "wb")。
CSV files
默认情况下,由行名组成的列没有列名。如果col.names = NA和row.names = TRUE,则添加一个空白列名,这是电子表格读取CSV文件时使用的约定。注意,这样的CSV文件可以通过以下命令在R中读取
read.csv(file = "<filename>", row.names = 1)
write.csv和write.csv2为编写CSV文件提供了方便的包装器。他们设置sep和dec(见下文),如果row.names = TRUE(默认值),qmethod = "double"和col.names为NA,否则为TRUE。
csv使用“。”作为小数点,逗号作为分隔符。
write.csv2使用逗号作为小数点,分号作为分隔符,这是一些西欧地区的CSV文件的Excel约定。
这些包装器故意不灵活:它们旨在确保使用正确的约定来编写有效的文件。更改append、col.names、sep、dec或qmethod的尝试将被忽略,并给出警告。
CSV文件不记录编码,对于许多其他应用程序来说,如果它们不是ASCII,就会导致问题。Windows Excel 2007/10将正确打开文件(例如,通过文件关联机制),如果它们是ASCII或UTF-16(使用fileEncoding = "UTF-16LE"),或者可能在当前的Windows代码页(例如,"CP1252"),但“文本导入向导”(从“数据”选项卡)允许更多的编码选择。Excel:mac 2004/8只能导入“Macintosh”(似乎是mac Roman的意思)、“Windows”(可能是Latin-1)和“PC-8”文件。OpenOffice 3。X在打开文件时要求输入字符集。文章来源:https://www.toymoban.com/news/detail-813989.html
Note
对于具有大量(数百或更多)列的数据帧,write.table可能很慢:这是不可避免的,因为每个列可能属于不同的类,因此必须单独处理。如果它们都属于同一个类,可以考虑使用矩阵。文章来源地址https://www.toymoban.com/news/detail-813989.html
到了这里,关于R语言【utils】——write.table(),write.csv(),write.csv2():将数据写入文件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!