无法在 Julia 中获取数据帧的前 N ​​行:UndefVarError: head not defined

Zee*_*han 5 julia

我是 Julia 的新手,我想查看数据框的前 5 行,但是当我编写下面的代码时

 head(df,5)
Run Code Online (Sandbox Code Playgroud)

我正进入(状态

 UndefVarError: head not defined
Run Code Online (Sandbox Code Playgroud)

Bog*_*ski 7

head在例如 R 中可用,但在 Julia 中不可用。首先 - 请注意,Julia 有一个很好的开箱即用的数据框打印系统,可以裁剪适合终端窗口的内容,因此您无需对数据框进行子集化以查看其头部和尾部。下面是一个例子:

julia> df = DataFrame(rand(100, 100), :auto)
100×100 DataFrame
 Row ? x1         x2          x3          x4         x5         x6        x7     ?
     ? Float64    Float64     Float64     Float64    Float64    Float64   Float6 ?
??????????????????????????????????????????????????????????????????????????????????
   1 ? 0.915485   0.176254    0.381047    0.710266   0.597914   0.177617  0.4475 ?
   2 ? 0.58495    0.551726    0.464703    0.630956   0.476727   0.804854  0.7908
   3 ? 0.123723   0.183817    0.986624    0.306091   0.202054   0.148579  0.3433
   4 ? 0.558321   0.117478    0.187091    0.482795   0.0718985  0.807018  0.9463
   5 ? 0.771561   0.515823    0.830598    0.0742368  0.0831569  0.818487  0.4912 ?
   6 ? 0.139018   0.182928    0.00129572  0.0439561  0.0929167  0.264609  0.1555
   7 ? 0.16076    0.404707    0.0300284   0.665413   0.681704   0.431746  0.3460
   8 ? 0.149331   0.132869    0.237446    0.599701   0.149257   0.70753   0.7687
  ?  ?     ?          ?           ?           ?          ?         ?          ?  ?
  93 ? 0.912703   0.98395     0.133307    0.493799   0.76125    0.295725  0.9249 ?
  94 ? 0.153175   0.339036    0.685642    0.355421   0.365252   0.434604  0.1515
  95 ? 0.780877   0.225312    0.511122    0.0506186  0.108054   0.729219  0.5275
  96 ? 0.132961   0.348176    0.619712    0.791334   0.052787   0.577896  0.6696
  97 ? 0.904386   0.938876    0.988184    0.831708   0.699214   0.627366  0.4320 ?
  98 ? 0.0295777  0.704879    0.905364    0.142231   0.586725   0.584692  0.9546
  99 ? 0.848715   0.177192    0.544509    0.771653   0.472267   0.584306  0.0089
 100 ? 0.81299    0.00540772  0.107315    0.323288   0.592159   0.1297    0.3383
                                                    94 columns and 84 rows omitted
Run Code Online (Sandbox Code Playgroud)

现在,如果您需要获取数据框的前 5 行并创建一个新数据框,请使用firstJulia Base 中定义的函数:

julia> first(df, 5)
5×100 DataFrame
 Row ? x1        x2        x3        x4         x5         x6        x7        x ?
     ? Float64   Float64   Float64   Float64    Float64    Float64   Float64   F ?
??????????????????????????????????????????????????????????????????????????????????
   1 ? 0.915485  0.176254  0.381047  0.710266   0.597914   0.177617  0.447533  0 ?
   2 ? 0.58495   0.551726  0.464703  0.630956   0.476727   0.804854  0.790866  0
   3 ? 0.123723  0.183817  0.986624  0.306091   0.202054   0.148579  0.343316  0
   4 ? 0.558321  0.117478  0.187091  0.482795   0.0718985  0.807018  0.946342  0
   5 ? 0.771561  0.515823  0.830598  0.0742368  0.0831569  0.818487  0.491206  0 ?
                                                                93 columns omitted
Run Code Online (Sandbox Code Playgroud)

总的来说,DataFrames.jl 的设计是我们尽可能地限制新函数名称的数量,并在可能的情况下重用 Julia Base 中定义的内容。这是这种情况的一个例子。这样用户需要学习的东西就少了。


CPh*_*hil 5

在 Julia 中,等效命令是first而不是head