Julia DataFrame输出函数

Julia函数可以输出一个DataFrame,以便将其转换为下面显示的文本以外的文本?

using DataFrames
A = DataFrame(randn(10, 7));

print("\n\n\n", "A = DataFrame(randn(10, 7))")

print("\n\n\n","print(A)\n")
print(A)

print("\n\n\n","show(A)\n")
show(A)

print("\n\n\n","show(A, true)\n")
show(A, true)

print("\n\n\n","show(A, false)\n")
show(A, false)

print("\n\n\n","showall(A)\n")
showall(A)

print("\n\n\n","showall(A, true)\n")
showall(A, true)

print("\n\n\n","showall(A, false)\n")
showall(A, false)

print("\n\n\n","display(A)\n")
display(A)

其中大部分输出类似于以下内容:

10×7 DataFrames.DataFrame
│ Row │ x1         │ x2        │ x3        │ x4        │ x5         │ x6        │ x7        │
├─────┼────────────┼───────────┼───────────┼───────────┼────────────┼───────────┼───────────┤
│ 1   │ 0.377968   │ -2.23532  │ 0.560632  │ 1.00294   │ 1.32404    │ 1.30788   │ -2.09068  │
│ 2   │ -0.694824  │ -0.765572 │ -1.11163  │ 0.038083  │ -0.52553   │ -0.571156 │ 0.977219  │
│ 3   │ 0.343035   │ -1.47047  │ 0.228148  │ -1.29784  │ -1.00742   │ 0.127103  │ -0.399041 │
│ 4   │ -0.0979587 │ -0.445756 │ -0.483188 │ 0.816921  │ -1.12535   │ 0.603824  │ 0.293274  │
│ 5   │ 1.12755    │ -1.62993  │ 0.178764  │ -0.201441 │ -0.730923  │ 0.230186  │ -0.679262 │
│ 6   │ 0.481705   │ -0.716072 │ 0.747341  │ -0.310009 │ 1.4159     │ -0.175918 │ -0.079051 │
│ 7   │ 0.732061   │ -1.08842  │ -1.18988  │ 0.577758  │ -1.474     │ -1.43082  │ -0.584148 │
│ 8   │ -1.077     │ -1.41973  │ -0.330143 │ -1.12357  │ 1.01005    │ 1.06746   │ 2.09197   │
│ 9   │ -1.60122   │ -1.44661  │ 0.299586  │ 1.46604   │ -0.0200695 │ 2.62421   │ 0.396777  │
│ 10  │ -1.74101   │ -0.541589 │ 0.425117  │ 0.14669   │ 0.95779    │ 1.73954   │ -1.7994   │

这是好的,在笔记本中看起来不错,并且使用nbconvert作为普通的ascii文本表正确输出到latex / pdf.但是,我想要更多选项来获得类似于以下内容的文本输出,这在nbconvert生成的latex / pdf中看起来要好得多.

|  Column 1  | Column 2 | Column 3 | Column 4 |
|-------|-------------|-------------|--------------|
| a | b | c | d |
| A | B | C | D |

是否有任何函数使用此格式输出Julia DataFrame?那些其他参数如digits =或caption =?

最佳答案 查看源代码,没有开箱即用的方法.你必须自己编写(然后你可以贡献给github repo).

最简单的方法是将输出writetable()用于内存文件(使用|作为分隔符),然后处理列标题

点赞