R 数据帧,与文件一起输入和输出
我正在寻找一种读取/写入基本数据帧的简单方法:R 数据帧,与文件一起输入和输出,r,R,我正在寻找一种读取/写入基本数据帧的简单方法: symbMat <- matrix("AJY", "6A", "6J", 0, 0, ncol=5) colnames(symbMat) <- c("Symb1","Symb2","Symb3","lastVstamp","completedRows") testFrame<-List(symbMat,matrix(c("date1","date2"))) 所以问题是 read.table(“MultiTable”,header
symbMat <- matrix("AJY", "6A", "6J", 0, 0, ncol=5)
colnames(symbMat) <- c("Symb1","Symb2","Symb3","lastVstamp","completedRows")
testFrame<-List(symbMat,matrix(c("date1","date2")))
所以问题是
read.table(“MultiTable”,header=TRUE)
给我一个文件,它将所有内容都视为一个2x6矩阵(最后一列的名称混乱)
当
只是做一个文件
AJY,6A,6J,0,0日期1,日期2 这显然是相当多的信息丢失。此外,没有read.matrix()函数,所以我不知道该函数的意义是什么
有什么想法吗 首先,
testFrame
不是data.frame
。在R中,data.frame
是一种非常特殊的对象类型。但是,这并不影响保存和重新加载数据的能力。有两组用于保存和加载数据的函数:save()
/load()
和dump()
/source()
。第一种创建二进制格式,第二种创建文本格式(尽管结构与屏幕上打印的格式不同)
修复示例中的打字错误:
symbMat <- matrix(c("AJY", "6A", "6J", 0, 0), ncol=5)
colnames(symbMat) <- c("Symb1","Symb2","Symb3","lastVstamp","completedRows")
testFrame<-list(symbMat,matrix(c("date1","date2")))
使用save()
和load()
:
使用dump()
和source()
:
注意,dump()
的第一个参数被引用<代码>温度R然后
testFrame <-
list(structure(c("AJY", "6A", "6J", "0", "0"), .Dim = c(1L, 5L
), .Dimnames = list(NULL, c("Symb1", "Symb2", "Symb3", "lastVstamp",
"completedRows"))), structure(c("date1", "date2"), .Dim = c(2L,
1L)))
testFrame
install.packages("MASS")
library(MASS)
write.matrix(testFrame,file="MultiTable")
symbMat <- matrix(c("AJY", "6A", "6J", 0, 0), ncol=5)
colnames(symbMat) <- c("Symb1","Symb2","Symb3","lastVstamp","completedRows")
testFrame<-list(symbMat,matrix(c("date1","date2")))
> testFrame
[[1]]
Symb1 Symb2 Symb3 lastVstamp completedRows
[1,] "AJY" "6A" "6J" "0" "0"
[[2]]
[,1]
[1,] "date1"
[2,] "date2"
save(testFrame, file="temp.RData")
load(file="temp.RData")
dump("testFrame", file="temp.R")
source(file="temp.R")
testFrame <-
list(structure(c("AJY", "6A", "6J", "0", "0"), .Dim = c(1L, 5L
), .Dimnames = list(NULL, c("Symb1", "Symb2", "Symb3", "lastVstamp",
"completedRows"))), structure(c("date1", "date2"), .Dim = c(2L,
1L)))