R语言 读取文件

article/2025/11/8 2:03:54

1. R读取txt文件

使用R读取txt文件直接使用read.table()方法进行读取即可,不需要加载额外的包。

read.table("/home/slave/test.txt",header=T,na.strings = c("NA"))

注意,此处的na.strings = c("NA") 的意思是文件中的缺失数据都是用NA进行表示;在读取文本文件时,默认的分割符号为空格。具体的参数设置可参照如下:

read.table(file, header = FALSE, sep = "", quote = "\"'",dec = ".", numerals = c("allow.loss", "warn.loss", "no.loss"),row.names, col.names, as.is = !stringsAsFactors,na.strings = "NA", colClasses = NA, nrows = -1,skip = 0, check.names = TRUE, fill = !blank.lines.skip,strip.white = FALSE, blank.lines.skip = TRUE,comment.char = "#",allowEscapes = FALSE, flush = FALSE,stringsAsFactors = default.stringsAsFactors(),fileEncoding = "", encoding = "unknown", text, skipNul = FALSE)
img_54ccf749196b2819bba5a15c9d44e0e2.png

2. R读取csv文件

使用R读取csv文件和读取txt文件很类似,使用的是read.csv()方法,两者参数的使用大部分是一样的。

read.csv("/home/slave/test.csv", header=T, na.strings=c("NA"))
read.csv(file, header = TRUE, sep = ",", quote = "\"",dec = ".", fill = TRUE, comment.char = "", ...)

3. R读取xls和xlsx文件

读取xls和xlsx有很多方法,但是这里面的很多方法也不是特别好用,例如RODBC包中的读取xls方法就不太好用,有时还会出现各种各样的问题。在进行了一番入坑探索之后,找到了两个相对好用的读取xls文件的包,下面我将分别进行说明。

  • gdata
install.packages("gdata")
library(gdata)
read.xls("/home/slave/test.xls",sheet=1,na.strings=c("NA","#DIV/0!"))其中sheet=1 参数的意思是读取第一个sheet中的内容;na.strings=c("NA","#DIV/0!") 将"NA" 和 "#DIV/0!" 都作为缺失数据表示,read.xls()方法的具体参数设置可参考如下:read.xls(xls, sheet=1, verbose=FALSE, pattern, na.strings=c("NA","#DIV/0!"),..., method=c("csv","tsv","tab"), perl="perl")
![](http://upload-images.jianshu.io/upload_images/9218360-3f24ba87157d2f8e?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)xls2csv(xls, sheet=1, verbose=FALSE, blank.lines.skip=TRUE, ..., perl="perl")
xls2tab(xls, sheet=1, verbose=FALSE, blank.lines.skip=TRUE, ..., perl="perl")
xls2tsv(xls, sheet=1, verbose=FALSE, blank.lines.skip=TRUE, ..., perl="perl")
xls2sep(xls, sheet=1, verbose=FALSE, blank.lines.skip=TRUE, ...,method=c("csv","tsv","tab"), perl="perl")

gdata包有着很多的功能,但是它对其他的包的依赖很多,可能会出现各种不可预知的问题,下面介绍一个较少依赖的包。

  • readxl
install.packages("readxl")
library(readxl)
read_excel("/home/slave/test.xls",sheet=1,na="NA")
read_excel(path, sheet = 1, col_names = TRUE, col_types = NULL, na = "", skip = 0)
img_c108f7beb2db7cd22b5d5436f57213c7.jpe

readxl软件包可以很容易地将数据从Excel和R中取出。与许多现有软件包(例如gdata,xlsx,xlsReadWrite)相比,readxl没有外部依赖关系,因此它很容易在所有操作系统上安装和使用。 它旨在与表格数据一起工作。readxl支持旧版.xls格式和现代基于xml的.xlsx格式。

用法

library(readxl)
readxl includes several example files, which we use throughout the documentation. Use the helper readxl_example() with no arguments to list them or call it with an example filename to get the path.readxl_example()
#>  [1] "clippy.xls"    "clippy.xlsx"   "datasets.xls"  "datasets.xlsx"
#>  [5] "deaths.xls"    "deaths.xlsx"   "geometry.xls"  "geometry.xlsx"
#>  [9] "type-me.xls"   "type-me.xlsx"
readxl_example("clippy.xls")
#> [1] "/Users/jenny/resources/R/library/readxl/extdata/clippy.xls"
read_excel() reads both xls and xlsx files and detects the format from the extension.xlsx_example <- readxl_example("datasets.xlsx")
read_excel(xlsx_example)
#> # A tibble: 150 x 5
#>   Sepal.Length Sepal.Width Petal.Length Petal.Width Species
#>          <dbl>       <dbl>        <dbl>       <dbl> <chr>  
#> 1         5.10        3.50         1.40       0.200 setosa 
#> 2         4.90        3.00         1.40       0.200 setosa 
#> 3         4.70        3.20         1.30       0.200 setosa 
#> # ... with 147 more rowsxls_example <- readxl_example("datasets.xls")
read_excel(xls_example)
#> # A tibble: 150 x 5
#>   Sepal.Length Sepal.Width Petal.Length Petal.Width Species
#>          <dbl>       <dbl>        <dbl>       <dbl> <chr>  
#> 1         5.10        3.50         1.40       0.200 setosa 
#> 2         4.90        3.00         1.40       0.200 setosa 
#> 3         4.70        3.20         1.30       0.200 setosa 
#> # ... with 147 more rows
List the sheet names with excel_sheets().excel_sheets(xlsx_example)
#> [1] "iris"     "mtcars"   "chickwts" "quakes"
Specify a worksheet by name or number.read_excel(xlsx_example, sheet = "chickwts")
#> # A tibble: 71 x 2
#>   weight feed     
#>    <dbl> <chr>    
#> 1   179. horsebean
#> 2   160. horsebean
#> 3   136. horsebean
#> # ... with 68 more rows
read_excel(xls_example, sheet = 4)
#> # A tibble: 1,000 x 5
#>     lat  long depth   mag stations
#>   <dbl> <dbl> <dbl> <dbl>    <dbl>
#> 1 -20.4  182.  562.  4.80      41.
#> 2 -20.6  181.  650.  4.20      15.
#> 3 -26.0  184.   42.  5.40      43.
#> # ... with 997 more rows
There are various ways to control which cells are read. You can even specify the sheet here, if providing an Excel-style cell range.read_excel(xlsx_example, n_max = 3)
#> # A tibble: 3 x 5
#>   Sepal.Length Sepal.Width Petal.Length Petal.Width Species
#>          <dbl>       <dbl>        <dbl>       <dbl> <chr>  
#> 1         5.10        3.50         1.40       0.200 setosa 
#> 2         4.90        3.00         1.40       0.200 setosa 
#> 3         4.70        3.20         1.30       0.200 setosa
read_excel(xlsx_example, range = "C1:E4")
#> # A tibble: 3 x 3
#>   Petal.Length Petal.Width Species
#>          <dbl>       <dbl> <chr>  
#> 1         1.40       0.200 setosa 
#> 2         1.40       0.200 setosa 
#> 3         1.30       0.200 setosa
read_excel(xlsx_example, range = cell_rows(1:4))
#> # A tibble: 3 x 5
#>   Sepal.Length Sepal.Width Petal.Length Petal.Width Species
#>          <dbl>       <dbl>        <dbl>       <dbl> <chr>  
#> 1         5.10        3.50         1.40       0.200 setosa 
#> 2         4.90        3.00         1.40       0.200 setosa 
#> 3         4.70        3.20         1.30       0.200 setosa
read_excel(xlsx_example, range = cell_cols("B:D"))
#> # A tibble: 150 x 3
#>   Sepal.Width Petal.Length Petal.Width
#>         <dbl>        <dbl>       <dbl>
#> 1        3.50         1.40       0.200
#> 2        3.00         1.40       0.200
#> 3        3.20         1.30       0.200
#> # ... with 147 more rows
read_excel(xlsx_example, range = "mtcars!B1:D5")
#> # A tibble: 4 x 3
#>     cyl  disp    hp
#>   <dbl> <dbl> <dbl>
#> 1    6.  160.  110.
#> 2    6.  160.  110.
#> 3    4.  108.   93.
#> # ... with 1 more row
If NAs are represented by something other than blank cells, set the na argument.read_excel(xlsx_example, na = "setosa")
#> # A tibble: 150 x 5
#>   Sepal.Length Sepal.Width Petal.Length Petal.Width Species
#>          <dbl>       <dbl>        <dbl>       <dbl> <chr>  
#> 1         5.10        3.50         1.40       0.200 <NA>   
#> 2         4.90        3.00         1.40       0.200 <NA>   
#> 3         4.70        3.20         1.30       0.200 <NA>   
#> # ... with 147 more rows

特征

  • 没有外部依赖,例如Java或Perl。
  • 将非ASCII字符重新编码为UTF-8。
  • 将日期时间加载到POSIXct列中。 Windows(1900)和Mac(1904)日期规格都正确处理。
  • 发现最小数据矩形并默认返回。 用户可以使用范围,跳过和n_max进行更多的控制。
  • 默认情况下,列名称和类型由工作表中的数据确定。 用户也可以通过col_names和col_types提供。
  • 返回一个tibble,即带有附加tbl_df类的数据框。 除此之外,这提供更好的打印。

http://chatgpt.dhexx.cn/article/OO6Dj1rj.shtml

相关文章

R从文件中读取数据,输出文件

看了几天的书&#xff0c;终于到这一步了&#xff0c;说实话&#xff0c;用R来做统计&#xff0c;很少有人手动的去输入那些数字&#xff0c;肯定是从别的地方导入的&#xff0c;我们用来处理就可以了&#xff0c;所以到这里才算是真正的入门&#xff0c;前面都是做基础的练手。…

R语言中文件或数据的读写

文章目录 系统数据的读写xlsx文件的读写举例说明具体代码结果如下 csv文件的读写读取csv文件写入csv文件使用readr包读取csv文件使用data.table包读取csv文件 scan函数scan()函数的使用语法参数含义描述实例&#xff1a; 系统数据的读写 save(a,b,file"test.RData")…

掌握R语言文件读取方法

目标 掌握 R语言文件读取方法 学习笔记 utils包内Date Input用法base包内readLines用法stringi包内stri_read_linesxlsx包内Date Input用法readr包内 Read a delimited file 用法 1.utils包内Date Input用法 以read.table为例。 read.table参数详细说明见http://www.360doc…

R语言入门(15)_读取文件(read)

目录 一、read.table() 读取工作路径下的纯文本文件&#xff08;.txt&#xff09;(.csv) 1、工作路径的设置 2、head函数——只显示数据前几行 3、read.table()的其他一些参数 二、与read.table相类似的函数 三、read.table()读取网络上的文本文件 三、读取非文本文件 …

使用R读取并查看数据

本篇文章介绍如何使用R读取并查看数据&#xff0c;包含一些最基础的函数使用方法和说明。后面还会陆续介绍数据清洗&#xff0c;匹配和提取等相关的操作。 查看函数帮助 对于新手来说&#xff0c;在使用R时最重要的是了解不同函数的使用方法。很多时候我们都是边用边学的状态&…

R语言如何从外部读取数据到R中

R语言可以从键盘&#xff0c;文本&#xff0c;excel&#xff0c;access&#xff0c;数据库&#xff0c;专业处理软件sas 一、使用键盘的输入 mydata<-data.frame(agenumeric(0),gendercharacter(0),weightnumeric(0)) mydata<-edit(mydata) 二、读入带有分隔符文本格式…

R语言入门——数据快速读取与查看(含实例代码和参数讲解)

R语言数据读取 介绍引言结构安排 数据读取函数文本数据readLines函数 键盘键入数据scan函数讲解 表格数据.xlsx文件介绍表格数据函数参数介绍 快速读入参数介绍竞赛数据练习2020美赛C题2019华为杯E题 数据查看函数表 介绍 引言 毕业季来临&#xff0c;很多小伙伴都在积极准备…

R语言读CSV、txt文件方式以及read.table read.csv 和readr(大数据读取包)

首先准备测试数据*(mtcars)分别为CSV. TXT **2018博客之星评选&#xff0c;如果喜欢我的文章&#xff0c;请投我一票&#xff0c;编号&#xff1a;No.009** [支持连接](https://blog.csdn.net/HHTNAN/article/details/85330758) ,万分感谢&#xff01;&#xff01;&#x…

R语言之读取文件夹的数据

读取文件路径&#xff1a;一层目录&#xff08;“示例”&#xff09;、二层目录&#xff08;“数据1”、“数据2”&#xff09;下的表格数据。 “示例”文件下&#xff1a; “数据1”文件下&#xff1a; “数据2”文件下&#xff1a; 读取文件夹 rm(listls()) #清除变量 …

R入门(一)----读取数据、查看数据

感谢大鹏dapengde 创建数据 #在相应位置新建文件夹 dir.create(E:/R/R lab/学R/r4r) #将数据文件存进文件夹 write.csv(as.data.frame(t(matrix(co2,12,dimnames list(month.abb,unique(floor(time(co2))) ) ))),file E:/R/R lab/学R/r4r/co2.csv)读取数据 R数据的导入与…

手把手教你用R语言读取CSV文件

导读&#xff1a;R语言有许多种方法去获取数据&#xff0c;最常用的是读取CSV文件。 作者&#xff1a;Jared P. Lander 来源&#xff1a;大数据DT&#xff08;ID&#xff1a;hzdashuju&#xff09; 读取CSV文件最好的方法是使用read.table函数&#xff0c;许多人喜欢使用read.c…

R语言中 数据读取与写入

R中其他读取: source #读取R代码 dget #读取R文件 load #读取工作空间 一。R语言读取文本文件(.txt) 在R语言中,读取文本文件的函数可以是:read.table()、scan()、read.fwf(),也可以将.txt转换为.csv或.xlsx文件用其他函数读取。 1. read.table() 参数解释: …

R语言——数据格式和数据读取

R语言——数据读取之详解 福尔摩斯曾说过:“数据,数据,没有数据的推理是罪恶!” 不过比起有意思的统计分析,数据的导入与导出显得十分的无趣,但是不得不说统计分析的数据导入与导出是个让人沮丧的任务,而且耗时巨大。 今天分享的是R数据的储存数据格式,及其R中数据的输…

2019-07-15_linux下vi复制粘贴

vi 环境块复制 1、shiftv 进入行选模式 2、上下箭头选中要复制的块 3、“y”复制 4、“p” 粘贴 转载于:https://www.cnblogs.com/wbly2019/p/11187370.html

linux ubuntu vim复制粘贴,关于vim的复制粘贴

今天被vim的复制粘贴弄得很烦,它不像windows那样,每次复制会把以前的内容覆盖。所以有时粘贴出来的东西并不是你想要的。 在不同终端中,用vim打开的两个文件之间的复制粘贴 1. 用同一个终端,直接使用这个命令: vim file1 file2 这样就可以直接用y和p复制粘贴了。 但是这样…

在windows或linux中使用VIM/VI复制粘贴内容命令及设置大全

在windows或linux中使用VIM/VI复制粘贴内容命令及设置大全 行复制&#xff1a; 【yy】复制光标所在行 【p】在光标位置粘贴复制的内容 多行复制&#xff1a; 【v】从当前位置进行可视化模式&#xff08;【Ctrlv】则进行可视化块选择&#xff09; 此时按上下左右箭头移动光标选…

使用pip安装pymysql

本人使用的python版本是3.6&#xff0c;该版本是自带有pip.可以直接通过pip工具进行安装pymysql: 第一步&#xff1a;找到pip.exe路径。 例如我安装的目录如下&#xff0c;自带的pip工具的python版本&#xff0c;在Scripts目录下都能够找到。 第二步&#xff1a;通过cmd进入命令…

pycharm中安装pymysql

进入pycharm终端&#xff0c;输入pip install pymysql进行安装

Python——pymssql安装

下载&#xff1a; https://pypi.python.org/pypi/pymssql/2.0.1#downloads pymssql的安装包&#xff1a; pymssql-2.0.1.win32-py2.7.exe 32位与python对应 pymssql-2.0.0b1.win-amd64-py2.7.exe 64位与python对应 网上没找到&#xff0c;在csdn中下载…

pymysql的安装及使用及使用mysql数据进行可视化(适合入门,过程详细明确,如有错误请一定指出)

文章目录 Python连接MySQL数据库(pymysql)一、准备模块二、连接数据库connect()&cursor()三、对数据库进行操作execute()四、关闭数据库的连接close() 处理MySQL的数据及简单可视化一、简单的使用1.查询2.插入3.更新4.删除 二、获取数据三、可视化 Python连接MySQL数据库(p…