1.4.1 从文本文件中导入数据

可以使用 read.table() 函数从带分隔符的文本文件中导入数。调用格式为:

这个函数看上去很复杂,但其实很多参数在使用时不用明确指出来,使用默认值可以满足绝大部分情况,因此实际使用还是比较简单的,下面我们简单介绍一下参数含义。file: 字符型,文件名称,要从中读取文件的完整路径。

header: 逻辑型,指定是否在首行包含变量名,默认为 FALSE。

sep: 字符型,分割字符,默认为"",代表空白字符,包括空格(一个或多个)、制表符、 换行符、回车

dec: 字符型,指定小数点字符,默认为".",一般不用修改。

numerals: 字符型,在数字转换会损失精度时的处理方法,allow.loss 表示允许精度损失;warn.loss 允许精度损失,但显示一条警告信息;no.loss 不允许精度损失,即转换为数字,而是转换为因子或者不转换,保留字符串形式。

row.names 字符向量,为行指定名称。

col.names 字符向量,为列指定名称,若列名在第一行定义好了,可不用。

stringAsFactors: 逻辑型,是否将字符串自动编码为因子,默认为 TRUE。

na.strings: 字符向量,定义代表缺失值的字符串,比如c("N",".")会将 "N" 和"." 两个字符读取为缺失值,默认为 "NA"。

colClasses: 字符向量为列指定类型,比如c("numeric","character")指定第一列为数值型,第二列为字符型,若将某列指定为字符串,则不会将其自动编码为因子。

nrows: 数值型,读取的最大行数,负数为不限制。

skip: 数值型,读取前跳过的行数。

check.names: 逻辑型,是否检查变量名在 R 中的有效性,默认为 TRUE。

fill: 逻辑型,是否自动填充空白值,若各变量行数不一致,是否为空白列添加空白值。

strip.white: 逻辑型,是否自动过滤掉字符型变量前后的空格。

comment.char: 字符型,注释字符,以此字符开头的行将被忽略。

blank.lines.skip 逻辑型,是否忽略空白行,默认为 TRUE。

allowEscapes: 逻辑型,是否处理 C 语言风格的转意符。

text: 字符型,直接指定要读取的字符串,此时 file 应该为空。

encoding: 字符型,输入文本的编码,若出现乱码,请尝试更改此选项。

fileEncoding: 字符型,文件编码,若出现乱码,请尝试更改此选项。

假定我们有一个文本文件,students.txt,记录了6个学生的性别、身高和体重情况,其内容如下:

那么我们可以用以下方式读取:

read.table() 是读取按行列组织的数据的基础方式,其它同类函数,比如 read.csv() 等其实是用特定的选项调用了 read.table() 函数。在 read.table() 函数时,应尽量注意以下几点。建议明确地在首行定义变量名,并加上参数 header = TRUE。

默认的分隔符为"",可以用空格、制表符、换行符等空白字符分割内容,若非空白分割,则需明确指出。

字符型变量会被自动转换为因子型,在读大型文件时,将 stringsAsFactors 设置为 False,能加快读取速度。

默认情况下,read.table 用 # 作为注释标识字符。如果碰到该字符(除了在被引用的字符串内),该行中随后的内容将会被忽略。

read.table()会尽量为每个变量选择合适的数据类型,若你想明确指定请用colClasses,或者生成后根据需要修改。

若读中文时出现乱码,请尝试改变编码

1.4.2 从 Excel 表格中读取

从 Excel 里读取数据最简单的办法就是将 Excel 表格存储为以逗号分割的 csv 文件,然后用 read.csv() 函数读取。read.csv() 函数其实就是 read.table() 的定制版,其用法与 read.table() 基本一致。

若要直接读取 Excel 文件,则需安装专门的包,本书推荐 readxl 包。

readxl 中有若干读取 Excel 数据的函数,最常用的是 read.excel()。调用格式为:

path: 字符型,文件路径sheet: 字符型或数值型。若为字符型,则指定 Sheet 名;若为数值,则指定 Sheet 的位置;若不指定,默认第一个Sheetrange: 字符型或数值型,读取的单元格范围,比较复杂,请查看文档col_names: 逻辑型或字符型向量;若为逻辑型,则指定是否将第一行作为变量名;若为字符向量,则直接定义各列名col_types: 字符型向量,定义各列数据类型,比如c("numeric","character");若不指定,则自动匹配na: 字符型向量,指定读取为缺失值的字符串 ,默认情况下,会将空单元格读取为缺失值trim_ws: 逻辑型,是否自动过滤掉字符型变量前后的空白(空格、制表符、换行符skip: 数值型,读取前跳过的行数,因为空白的行会自动跳过,所以这是最小的被跳过的行数n_max: 数值型,最大读取行数guess_max: 数值型,猜测列类别时,检测的最大行数

假如,在 d 盘有一名为 students.xls 的 Excel 文件,你可以通过如下方式读取。

喜欢闲适安静的生活,懂一点计算机编程,懂一点统计学和数据分析。(爱编程爱统计)

r导入txt乱码_R学习笔记系列—R语言从文本和Excel文件中读取数据-excel打开是乱码...相关推荐

  1. 安卓学习专栏——从文件中读取数据、openFileInput(图文+代码)

    步骤 系列文章 前言 1.实现效果 1.1启动时初始化填写读取的数据,或是点击读取显示数据 1.2保存新数据 1.3点击读取按钮读取数据 1.4重启查看效果 2.xml外观文件 3.java功能文件 ...

  2. vc++从txt文件中读取数据

    数值分析课上老师说要将数据写在txt文件上,然后让程序从txt文件中读取数据.让本来C++已经遗忘了很久的我们无从下手,在网上也查看了很多,发现大多都是扯淡,放在VC++编辑器上发现并不能运行,不知道 ...

  3. 如何用c语言从txt文件中读取数据

    用C语言从txt文件中读取数据,可以使用C标准库文件自带的文件接口函数进行操作. 一.打开文件: FILE *fopen(const char *filename, const char *mode) ...

  4. (R语言)从文件中读取数据

    7.1 函数read.table() 该函数可以直接将文件中完整的数据帧读入.此时文件要符合特定的格式: 1 第一行应当提供数据帧中每个变量的名称: 2 每一行(除变量名称行)应包含一个行标号和各变量 ...

  5. R语言:从 csv 文件中读取数据,然后将数据写入 csv 文件

    在 R 中,我们可以从存储在 R 环境外部的文件读取数据.我们还可以将数据写入将由操作系统存储和访问的文件中.R可以读取和写入各种文件格式,如csv,excel,xml等. 在本章中,我们将学习从 c ...

  6. 向HBase中导入数据3:使用MapReduce从HDFS或本地文件中读取数据并写入HBase(增加使用Reduce批量插入)

    前面我们介绍了: 向HBase中导入数据1:查询Hive后写入 向HBase中导入数据2:使用MapReduce从HDFS或本地文件中读取数据并写入HBase(只使用Map逐条查询) 为了提高插入效率 ...

  7. C++实现从.txt文件中读取数据存入数组,将数组数据写入.txt文件

    声明: 编译器:vs2017 所有用到的.txt文件都是提前放在当前工程目录下的. 完整测试代码:github–Zhaotiedan 方法一:针对可以提前知道存入数组的大小 1.从.txt文件中读取数 ...

  8. 在matlab中导入excel,Matlab导入Excel文件中的数据的详细教程分享

    操作Matlab时还不会导入Excel文件中的数据?本文就介绍了Matlab导入Excel文件中的数据的操作内容,想要学习的朋友可以看一看下文哦,相信对大家会有所帮助的. 直接点击鼠标操作导入数据 打 ...

  9. 关于使用Java后台导入excel文件,读取数据后,更新数据库,并返回数据给到前端的相关问题总结

    在之前的项目中,使用到了Java后台读取excel文件数据的功能点,本想着该功能点已经做过了,这一类的应该都大差不离,不过在刚结束的一个项目中,现实给我深深的上了一课,特此编写此片博客,以作记录,并给 ...

最新文章

  1. Cylinder3D :3D环境下的Lidar 点云分割
  2. Python循环中的变量作用域的灵异现象
  3. mysql严格模式 报错_代码一上传服务器就报错-尝试开启 MySQL 严格模式
  4. 在页面中隐藏数据库某信息并显示该信息对应的字典编码名称(后台ssh框架,前台extjs)
  5. 浏览器渲染原理与过程
  6. 2014-11-25nbsp;11:26
  7. jzoj100042-保留道路【最小生成树,图论】
  8. 计算机专业简历推荐信范文,个人简历自我推荐信范文【三篇】
  9. 分布式事务Seata的AT模式下两阶段提交原理
  10. mysql 本地热备_MySQL 数据库热备的操作
  11. 由《资深架构师带你玩转框架封装》课程——我的实践
  12. 数据结构C语言版严蔚敏——每周一更新
  13. createjs之easeljs【游戏看你有多色(一)】
  14. 布隆过滤器(Bloom Filter)
  15. 基于BIM平台的智慧管廊运维管理的应用研讨
  16. CF223B Two Strings
  17. 服务器软件RAID组建及性能测试
  18. 百度大规模战略性混部系统演进
  19. ​赛分科技冲刺科创板上市:拟募资8亿元,复星、高瓴为股东​
  20. 1044: 不及格率 Java

热门文章

  1. 小小Python编程故事-小小的成绩单(1)
  2. The 2019 ACM-ICPC China Shannxi Provincial Programming Contest C.Angel's Journey(计算几何基础)
  3. 卖护肤品从哪里引流效果好?卖护肤品怎么找客源?卖护肤品引流技巧
  4. Python实现自动小One易统计打卡
  5. 高维矩阵求逆的方法,inv、pinv、/
  6. 【HA】HomeAssistant 添加 小米温湿度计2代
  7. PDF,png,jpg,bmp转换为word
  8. 找实习中的一些困惑,如何解决?
  9. 百度,360,淘宝,腾讯,高通中国,htc上海 Android 面试题
  10. 同步辐射XAFS表征方法的应用场景分析