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)))