# 数据导入 {#import}
在掌握一定的 R 编程技能后,我们开始迈入数据分析的殿堂。大部分数据分析事务的数据都不是通过 R 创建,而是来自于各种数据收集软硬件、渠道,包括 Excel、网络等。本章聚焦于如何将数据导入 R 中以便于开始数据分析。对于本章的内容,读者既可以系统地从头到尾深入阅读学习,也可以根据自己实际工作需要或时间限制选择一些重点或感兴趣内容进行掌握。
本章的重点内容包括符号分隔文件、Excel 文件、JSON 文件以及 R 支持的数据格式 RData 和 RDS,其他格式的数据将放到本章【**常见问题与方案**】一节作为补充介绍。
## 符号分隔文件
符号分隔文件是**最最常用**的数据文件格式,知道如何导入它是读者的必备技能。这里的**符号**泛指一切可以用作数据内容分隔的符号,常见的包括逗号(`,`),制表符(`\t`),我们常称它们为 CSV 文件和 TSV 文件。
### CSV
CSV 文件常以 `.csv` 作为文件拓展名,比如接下来我们会导入的 `mtcars.csv`。注意,文件拓展名并不会影响文件本身的内容,它只是用来方便帮助人们快速的了解内容格式,另外支持其他一些程序的自动解读(在你的计算机上,不同的文件拓展名系统软件可以会对它们使用不同的图标,如 Word 文档和 PPT)。
一般规整的数据以行作为观测,列作为记录(变量、域),如一个班级同学的成绩。
```
student,chinese,math,english
stu1,99,100,98
stu2,60,50,88
```
R 内置了 `read.table()` 函数用于便捷导入各类分隔符的文件。下面我们直接将这个成绩记录信息以文本的形式传入,结果会返回一个数据框:
```{r}
stu readline("输入年龄:")
输入年龄:22
[1] "22"
```
如果是想要将文件的内容按行的方式读取进来,需要使用 `readLines()` 函数。
下面是一个来自 `readLines()` 的官方示例:
```{r}
fil