Matrix SciLua:靠近';]的意外符号';

Matrix SciLua:靠近';]的意外符号';,matrix,lua,Matrix,Lua,从页面运行以下示例(我的测试文件名为test.lua): 我不断得到错误: test.lua:13:靠近']'的意外符号 大多数其他模块工作正常,但问题仅在使用矩阵时出现。我感谢你的帮助 更新: 有了@stepelu的帮助性回答,我非常感谢他,下面的完整示例现在运行良好: local alg = require 'sci.alg' local prng = require 'sci.prng' local stat = require 'sci.stat' local dis

从页面运行以下示例(我的测试文件名为
test.lua
):

我不断得到错误:

test.lua:13:靠近']'的意外符号

大多数其他模块工作正常,但问题仅在使用矩阵时出现。我感谢你的帮助

更新:

有了@stepelu的帮助性回答,我非常感谢他,下面的完整示例现在运行良好:

local alg     = require 'sci.alg'
local prng    = require 'sci.prng'
local stat    = require 'sci.stat'
local dist    = require 'sci.dist'

local min, sqrt, random, abs = math.min, math.sqrt, math.random, math.abs
local rng = prng.std()
local vec, mat, join = alg.vec, alg.mat, alg.join

local function randn(r, c)
    local x = mat(r, c)
    for i=1,#x do 
        x[i] = dist.normal(0, 1):sample(rng) 
    end
    return x
end

local function randmatstat(t)
  local n = 5
  local v, w = alg.vec(t), alg.vec(t)
  for i=1,t do
      local a, b, c, d = randn(n, n), randn(n, n), randn(n, n), randn(n, n)
      local P = alg.join(a..b..c..d)
      local Q = alg.join(a..b, c..d)
      v[i] = alg.trace((P[]`**P[])^^4) -- Matrix transpose, product and power.
      w[i] = alg.trace((Q[]`**Q[])^^4) -- Matrix transpose, product and power.
  end
  return sqrt(stat.var(v))/stat.mean(v), sqrt(stat.var(w))/stat.mean(w)
end

print(randmatstat(1000))
根据预期产出:

0.75865001347735    0.74932678346271
[Finished in 0.2s]
这里是SciLua的作者

为了启用SciLua语言扩展,有必要在
sci
软件包的基础上再安装
sci lang
软件包

如果您安装了SciLua作为ULua发行版的一部分,如SciLua.org(首选方法)所示,那么通过
SciLua
可执行文件而不是
lua
可执行文件执行脚本就足够了

否则,如果您选择在现有LuaJIT安装的顶部手动安装
sci
sci lag
,则以下内容适用。 该软件包包含一个_bin文件夹,当通过upkg(在ULua中)安装时,每个操作系统的可执行脚本将自动从该文件夹中包含的lua文件创建。
因此,如果您选择手动安装,您必须自己创建一个可执行脚本(例如,在Linux上,一个名为
scilua
且具有exec权限的文件,内容为
\uu bin/scilua.lua
+bash shebang)。

闻起来它不像backtick,我看到了否决票,但这是我学习lua的第一天,也许我在做些蠢事。向下投票者能不能给我一个提示,让我更积极一些?@MarcinOrlowski——正如页面上所说的那样,背景符号是矩阵转置的。@MarcinOrlowski——我的问题是为什么它不喜欢背景符号?为什么它不能识别
**
^
?非常感谢,我被Windows:cd文件夹上的
#命令误导了,该文件夹包含_uloa/uloa lua[options][script args]
。现在一切都好了。我很感谢你,我本来打算放弃我非常喜欢的Scilua的整个想法。
0.75865001347735    0.74932678346271
[Finished in 0.2s]