基于R,仅供自食。
相信自己,每天多学一点。
一、读取文本文件
一般采用read.table()函数和read.csv()函数实现文本文件数据的读取
对于这两个函数有几个重要的参数:
file指定外部文件的路径和文件名;
header指定是否将原数据的第一行最为字段名,
read.table()函数默认设置为FALSE,而read.csv()函数默认设置为TRUE;
sep指定字段之间的分割符,read.table()函数默认设置为空格"",而read.csv()函数默认设置为逗号,;
read.table()函数还可以设置读入数据集的行名、列名、字符串是否转换为因子、缺失值的形式等,详细可查看read.table()函数的帮助文档。
二、读取电子表格
工作中也有很多数据是存放在EXCEL中的,
对于这类数据的读取一般有两种方法,要么将xls或xlsx格式的数据转换为csv,用read.csv()函数读取;
要么直接使用xlsx软件包中的read.xlsx()函数直接读取电子表格数据。
例子:
library(xlsx)
data <- read.xlsx(file = file.choose(), sheetIndex = 1)
还有一个包readxl,这个很方便
data <- read_excel(file.choose())
三、读取数据库数据
读取数据库数据应该是日常工作中最频繁的,
常用的数据库有SQL Server、MySQL和Oracle等数据库,
以下为SQL Server数据库数据为例。
配置:
使用RODBC包可以方便快捷的读取SQL Server数据库,
但在读取之前需要对计算机的数据源进行配置,
过程如下:
控制面板-->管理工具-->数据源(ODBC)-->添加-->选择对应的数据库驱动-->点击完成并填写数据源名称、服务器等信息。
#加载RODBC包
library(RODBC)
#建立连接
connect <- odbcConnect(dsn = 'test',uid = "", pwd = "")
#读取数据
my.data <- sqlQuery(channel = connect, query = 'select * from quantile')
head(my.data)
#也可以将现有的数据集反写到数据库中
sqlSave(channel = connect, dat = iris, tablename = 'iris', rownames = FALSE, append = TRUE)
close(connect)