R语言 读写带分隔符的文件

  • 有众多的格式和文本文件标准可用于存储数据。用于存储数据的通用格式为分隔符值(即CSV或制表符分割文件)、可扩展标记语言(XML)、JavaScript对象表示法(JSON)
  • 将数据存储在文本文件中的主要优点是:他们可被几乎所有的其他数据分析软件或人读取

R语言提供丰富的函数来读取不同格式的数据,包括:

    □        文本文件(TXT文件)

    □        逗号分隔文件(CSV文件)




TXT文件——read.table()

矩形(类似电子表格的)数据通常存储在带有分隔符的文件中,特别是逗号分隔值(CSV)和制表符分隔值文件。read.table将读取这些分隔符文件,并将结果存储在一个数据框中。其格式如下:
                read.table(file,header = FALSE,sep = “”,quote = “”’",
                                  dec = “.”,numerals = c(“allow.loss”,“warn.loss”,“no.loss”),
                                  row.name,col.name,as.is = !stringsAsFactors,
                                  na.strings = “NA”,colClasses = NA,nrow = -1,
                                  skip = 0,check.names = TRUE,fill = !blank.lines.skip,
                                  strip.white = FALSE,bla nk.lines.skip = TRUE,
                                  comment.char = “#”,
                                  allowEscapes = FALSE,flush = FALSE,
                                  stringsAsFactors = default.stringsAsFactors(),
                                  fileEncoding = “”,encoding = “unknown”,text,skipNul = FALSE)

read.table 函数的常用参数描述

参数 描述
file 文件名(包含在“”内,或使用一个字符型变量),可能需要全路径(即使是在Windows下,符号 \ 也不允许包含在内,必须用 / 或者 \ \ 替换)或者一个URL(Uniform Resource Location,统一资源定位符)链接(用URL对文件远程访问)
header 一个逻辑值,用来反映这个文件的第1行是否包含变量名,为TRUE时表示文件的第1行为变量名
sep 文件中的字段分隔符,例如,对用制表符分隔的文件使用sep=“\t”
quote 指定用于包围字符型数据的字符
dec 用来标识小数点的字符
fill 如果为TRUE且所有行中的变量数目并不相同,则用空白填补
row.names 保存着行名的向量,或文件中一个变量的序号或名字,默认时行号取为1、2、3···
col.names 指定列名的字符型向量,默认值为V1、V2、V3···
encoding 若文件中包含非ASCII字符字段,则使用此参数进行设置,可确保以正确的编码方式读取,避免出现乱码

更多高级选项包括:覆盖默认的行名、列名和类,指定输入文件的字符编码,以及输入的字符串格式的列如何声明

在这里插入图片描述
在这里插入图片描述


CSV文件——read.csv()

read.csv函数可读入一个逗号分隔文件并将其保存为一个数据框,其格式如下:
read.csv(file,header = TRUE,sep = “,”,quote = “” “,dec=” . ",fill = TRUE,comment.char = " ",ecoding = "unknown ",…)

参数 描述
file 文件名(包含在“”内,或使用一个字符型变量),可能需要全路径(即使是在Windows下,符号 \ 也不允许包含在内,必须用 / 或者 \ \ 替换)或者一个URL链接(用URL对文件远程访问)
header 一个逻辑值,用来反映这个文件的第1行是否包含变量名,为TRUE时表示文件的第1行为变量名
sep 文件中的字段分隔符,CSV文件默认为sep=","
quote 指定用于包围字符型数据的字符
dec 用来标识小数点的字符
fill 如果为TRUE且所有行中的变量数目并不相同,则用空白填补
comment.char 包含单个字符或空字符串的长度为1的字符向量,以这个字符开头的行将被忽略(要禁用这个参数,可使用comment.char=""
encoding 若文件中包含非ASCII字符字段,则使用此参数进行设置,可确保以正确的编码方式读取,避免出现乱码


在这里插入图片描述
与此相反的任务是写入文件,write.table和write.csv分别对应着read.table和read.csv的读操作

发布了152 篇原创文章 · 获赞 157 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_43133192/article/details/105341299