首页 > 解决方案 > 将从 csv 文件导入的数据框转换回手动 data.frame 导入命令

问题描述

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

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

其中 A、B、C 是列名。

我想将 csv 文件的数据保留在我的 r 脚本中,这样如果 csv 文件被移动/丢失,数据和 r 脚本之间的链接就不太可能被破坏。一旦导入 csv 数据并自动生成重新创建从 csv 文件导入的数据框所需的 data.frame 命令,是否可以向后工作?在这个例子中,这将是:

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

提前感谢您的帮助和时间。

标签: r

解决方案


如果您想要重新创建 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数据框。新创建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

推荐阅读