julia - 如何在 Julia 中提供可重现的样本数据
问题描述
在这里stackoverflow.com
-当我提供示例数据以制作可重复的示例时,我该如何以朱利安的方式做到这一点?
例如R
,dput(df)
将输出一个字符串,您可以使用它df
再次创建。因此,您只需在 stackoverflow 和 bam 上发布结果!- 可重现的例子。那么,在 Julia 中应该怎么做呢?
解决方案
我认为通常最简单的做法是在您的示例中简单地构造一个带有随机数等的 MWE DataFrame,因此无需读取/写入。
在不方便的情况下,您可能会考虑写入 IO 缓冲区并获取其字符串表示形式,然后人们可以以相同的方式反向读取:
julia> using CSV, DataFrames
julia> df = DataFrame(a = rand(5), b = rand(1:10, 5));
julia> io = IOBuffer()
IOBuffer(data=UInt8[...], readable=true, writable=true, seekable=true, append=false, size=0, maxsize=Inf, ptr=1, mark=-1)
julia> string_representation = String(take!(CSV.write(io, df)))
"a,b\n0.5613453808585873,9\n0.3308122459718885,6\n0.631520224612919,9\n0.3533712075535982,3\n0.35289980394398723,9\n"
julia> CSV.read(IOBuffer(string_representation))
5×2 DataFrame
│ Row │ a │ b │
│ │ Float64 │ Int64 │
├─────┼──────────┼───────┤
│ 1 │ 0.561345 │ 9 │
│ 2 │ 0.330812 │ 6 │
│ 3 │ 0.63152 │ 9 │
│ 4 │ 0.353371 │ 3 │
│ 5 │ 0.3529 │ 9 │
推荐阅读
- sql - SQL - 按最新更新对数据进行分组
- docker - Pion 自定义 SFU 服务器无法在 docker 内工作
- html - React 和垂直响应式设计
- node.js - Mailgun 在 Node.js 应用程序中看不到凭据
- javascript - React 处理 DOM 元素的良好实践
- javascript - 为什么这个 MongoDB 文档是用相同的 nanoid 生成的?
- javascript - 从javascript中的圆圈中排除点
- flutter - Flutter 的谷歌地图插件 onTap 不工作
- python-3.x - 将数据从 Pandas 数据框中保存到 csv 文件中,并附加多个项目
- function - 反射性地引用重载的顶级 Kotlin 函数