我经常使用reprex::reprex
创建可重现的R
代码示例来获得其他人的帮助以消除我的代码中的错误。通常,我使用iris
or之类的数据集创建最小的示例mtcars
,并且效果很好。但是我总是无法在reprex
需要使用自己的数据的任何时候使用,因为问题非常具体,我不能依赖datasets
库中的数据集。
在这种情况下,我收到以下错误:
# loading needed libraries
library(ggplot2)
library(cowplot)
library(devtools)
# reading the datafile
data <- utils::read.csv(file = "data.csv")
#> Warning in file(file, "rt"): cannot open file 'data.csv': No such file or
#> directory
#> Error in file(file, "rt"): cannot open the connection
由reprex 包(v0.2.0)于 2018 年 2 月 19 日创建。
在其他地方有一个很好的讨论reprex
(如何制作一个很棒的 R 可重现示例?)。作者建议使用类似dput
-
如果您有一些使用这些技巧难以构建的数据,那么您始终可以使用例如 或索引来制作原始数据的子
head()
集subset()
。然后使用例如。dput()
给我们一些可以R
立即放入的东西
但也提到——
如果您的数据框有一个具有多个级别的因子,则
dput
输出可能会很笨拙,因为它仍会列出所有可能的因子级别,即使它们不存在于您的数据子集中。
因此,如果我想使用我的完整数据集,这不是一个好的选择。
总之:
任何人都知道如何创建一个reprex
独立的,即使它依赖于使用包含所有数据的本地文件?