小编Pål*_*tan的帖子

错误:“mutate()”列出现问题 (...) 大小必须为 15 或 1,而不是 17192

lme4::lmer我目前正在尝试按照本教程绘制函数的结果。我已经尝试了教程中的代码,它按预期工作。\n在教程中,在pred_dist绘图之前将一列添加到数据集中以用于拟合函数。当我用自己的数据尝试此操作时,出现以下错误:

\n
Error: Problem with `mutate()` column `pred_dist`.\n\xe2\x84\xb9 `pred_dist = fitted(model0)`.\n\xe2\x84\xb9 `pred_dist` must be size 15 or 1, not 17192.\n\xe2\x84\xb9 The error occurred in group 1: sgroup = 578, group = 1.\n
Run Code Online (Sandbox Code Playgroud)\n

样本数据

\n

我的代码:

\n
# Loaded libraries\nlibrary(dplyr)\nlibrary(ggplot2)\nlibrary(lme4)\nlibrary(lmerTest)\nlibrary(lattice)\n\n# My lmer model. myData is fairly \nmodel0 <- lmer(outcome ~ (1|group), data=myData, REML = FALSE)\nsummary(model0)\n\nmyData %>% \n    # save predicted values\n    mutate(pred_dist = fitted(model0)) \n
Run Code Online (Sandbox Code Playgroud)\n

我想了解的是:是什么导致了此错误消息,以及如何解决它?

\n
\n
更新:
\n

根据bouncyballungroup()的评论,我在之前添加了\n …

r lme4 dplyr

5
推荐指数
1
解决办法
3万
查看次数

在 Julia 中断言对角化向量时,是什么导致了“AssertionError”?

我一直在 julia做一些练习,我目前正在尝试将@assert一个向量对角化为一个矩阵,与练习笔记本中给出的“解矩阵”相对。但是,AssertionError在针对提供的解决方案断言我的代码时,我得到了一个。我的代码示例:

julia> using LinearAlgebra

julia> A =
[
 140   97   74  168  131
  97  106   89  131   36
  74   89  152  144   71
 168  131  144   54  142
 131   36   71  142   36
]

5×5 Matrix{Int64}:
 140   97   74  168  131
  97  106   89  131   36
  74   89  152  144   71
 168  131  144   54  142
 131   36   71  142   36

julia> A_eigv = eigen(A).values

5-element Vector{Float64}:
 -128.49322764802145
  -55.887784553057
   42.752167279318854
   87.16111477514494 …
Run Code Online (Sandbox Code Playgroud)

assertion julia

2
推荐指数
1
解决办法
110
查看次数

如何在 Julia 中测试特定数字有效数字的近似相等性

isapprox()Julia 中的函数用于测试两个数字或数组是否近似相等。我希望能够测试任何所需数量的有效数字的近似相等性。正如下面的代码示例所示,近似容差要么以绝对值给出,要么以相对(百分比)偏差给出。

# Syntax
isapprox(a, b; atol = <absolute tolerance>, rtol = <relative tolerance>)

# Examples
# Absolute tolerance
julia> isapprox(10.0,9.9; atol = 0.1) # Tolerance of 0.1
true

# Relative tolerance
julia> isapprox(11.5,10.5; rtol = 0.1) # Rel. tolerance of 10%
true

julia> isapprox(11.4,10.5; rtol = 0.01) # Rel. tolerance of 1%
false

julia> isapprox(98.5, 99.4; rtol = 0.01) # Rel. tolerance of 1%
true
Run Code Online (Sandbox Code Playgroud)

我在某处的论坛中读到该设置rtol = 1e-nn有效数字的数量将比较有效数字。(不幸的是,我无法再次找到它。)不管怎样,正如示例所示,这显然不是真的。

鉴于在这种情况下我们想用两位有效数字近似相等,11.4 和 10.5 都近似等于 11。但是,两者之间的相对差异大于 1%,返回近似值 …

significant-digits approximate julia

1
推荐指数
1
解决办法
223
查看次数

了解 Magrittr 管道 `%&gt;%` 语法的正确使用

我有一个命名的数字向量,我试图将每个元素除以所有元素的总和。然后我想使用该signif函数四舍五入到有效数字。通过计算除法并存储变量,然后使用存储的变量来计算有效数字,“老派”的做法很容易。magrittr但是,如果我尝试使用管道运算符 ( )直接通过管道进行计算%>%signif则不会真正对向量执行任何操作。

我试图理解其中的区别,因为我经常遇到管道与基本 R 函数结合使用的问题。

这是一个示例,我得到的输出:

> # My named vector
> v <-setNames(c(1:5), letters[1:5])

> # Dividing each element by the total sum and rounding to significant figures
> a <- v/sum(v)
> a <- signif(a, digits = 3)

> # Dividing each element by the total sum and piping directly to signif()
> b <- v/sum(v) %>% signif(digits = 3)

> a
> b

a: 0.0667   b 0.133   c …
Run Code Online (Sandbox Code Playgroud)

r pipe operator-precedence magrittr

1
推荐指数
1
解决办法
188
查看次数