将从csv文件导入的数据帧转换回手动data.frame import命令

时间:2018-08-04 10:05:40

标签: r

我在excel生成的csv文件中有一些数据,我使用read.csv命令以数据帧的形式将其导入R中。让我们这样说一张桌子:

queries.getPlayersList = function(collectionName, query, callback) {
db().db('test').collection(collectionName).find(query.id).sort(query.sortBy).skip(query.skip).limit(parseInt(query.limit) ).toArray(function (err, result) {

        callback(err, result);
    })
}

其中A,B,C是列名。

我想将csv文件的数据保存在我的r脚本中,因此如果移动/丢失csv文件,则数据与r脚本之间的链接断开的可能性较小。导入csv数据后是否可以向后工作,并自动生成重新创建从csv文件导入的数据帧所需的data.frame命令?在此示例中为:

A  B  C
1  2  3
4  5  6
7  8  9

预先感谢您的帮助和时间。

1 个答案:

答案 0 :(得分:1)

如果要使用R指令重新创建R对象,则该指令为dput

在此示例中,我将使用您的代码创建一个数据帧df1,对其进行复制,df2,然后使用rm删除原始数据。

df1 <- data.frame(A=c(1,2,3),B=c(4,5,6),C=c(7,8,9))
df2 <- df1

dput(df1)
rm(df1)

现在将dput的输出分配给名为df1 new 数据帧。新创建的df1与旧df2相同。

df1 <-
structure(list(A = c(1, 2, 3), B = c(4, 5, 6), C = c(7, 8, 9)), class = "data.frame", row.names = c(NA, 
-3L))

identical(df1, df2)
#[1] TRUE