【R语言】--- 各类数据的导入

【R语言】--- 各类数据的导入,第1张

通常情况下,我们会在excel中对数据进行预处理,然后将处理好的数据导入R中进行分析、作图。但随着数据源和数据格式的多样化,将多种数据源和数据格式导入R中进行分析、作图显得尤为必要,因为这对于数据分析、作图是最基础的。
R可导入键盘(利用键盘输入)、文本文件、excel、access、spss、sas等各类数据格式。

利用R中的edit()函数手动输入数据的文本编辑器:
(1)创建一个空数据框(或矩阵),其中变量名和变量的模式需与理想中的最终数据集一致;
(2)针对这个数据对象调用文本编辑器,输入你的数据,并将结果保存回此数据对象中。

函数edit()事实上是在对象的一个副本上进行 *** 作的。若不将其赋值到一个目标,则所有修改将会全部丢失!

用readtable()从带分隔符的文本文件中导入数据。此函数可读入一个表格格式的文件并将其保存为一个数据框。

参数sep允许你导入那些使用逗号以外的符号来分隔行内数据的文件。你可以使用sep="\t"读取以制表符分隔的文件。此参数的默认值为sep="",即表示分隔符可为一个或多个空格、制表符、换行符或回车符。

我习惯用readxl包的read_excel()函数进行导入:

SPSS数据集可以通过foreign包中的函数readspss()导入到R中,也可以使用Hmisc包中的spssget()函数。

usevaluelabels=TRUE表示让函数将带有值标签的变量导入为R中水平对应相同的因子。

R中设计了若干用来导入SAS数据集的函数,包括foreign包中的readssd()和Hmisc包中的sasget()。这里我们使用sas7bdat包的readsas7bdat()函数进行导入sas数据。

Robert I Kabacoff (著) R语言实战(高涛/肖楠/陈钢 译) 北京: 人民邮电出版社

安装RODBC包:
if(!require(RODBC)) installpackages("RODBC");library(RODBC);
ss <- odbcConnectExcel("E:/TimeSeries/DataSets/EX/DEXCHEUxls");
ss1 <- sqlFetch(ss, "Sheet1");
odbcClose(ss); # close
# transform data
ss <- ss1[-(1:3),]; #ss1是读取的表格

把数据写入excel,主要是用writetable函数

用?writetable或者help(writetable)来查看帮助

以下是这个函数的一些参数:

writetable(x, file = "", append = FALSE, quote = TRUE, sep = " ",
            eol = "\n", na = "NA", dec = "", rownames = TRUE,
            colnames = TRUE, qmethod = c("escape", "double"),
            fileEncoding = "")

里面有个append参数,默认是FALSE

append    
logical Only relevant if file is a character string If TRUE, the output is appended to the file If FALSE, any existing file of the name is destroyed

把这个参数设置成TRUE就可以把数据追加到已有的文件后面了。

一、 安装RODBC库
1、进入R语言的GUI界面(RGUIEXE),在菜单栏选择“程序包/安装程序包

2、在d出的窗口里往下拉,选择RODBC如图,点击确定
3、在ODBC数据源管理器里将需要的数据库添加进去,这里笔者使用的是SQL Server2008,驱动程序选择Native Client100

3、在R语言窗口输入连接语句

众所周知,excel生成的文件后缀是xls或者xlsx,早期读取这样的文件,要么就另存为csv格式,要么就用readxls或者xlsx这样的R包,可能会遇到Rjava报错的问题。现在有了一个优秀的解决办法,就是rio包。

它能够兼容含有多个工作簿的xlsx文件,非常巴适。

用R语言的内置数据组个列表。

它就变成了含有多个工作簿的电子表格哦。

有import函数可以读取各种类型的文件,但对于xlsx它只识别第一个工作簿。用import_list读取即可


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12750242.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-27
下一篇 2023-05-27

发表评论

登录后才能评论

评论列表(0条)

保存