Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/104.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
 Julia_IT技术博客_编程技术问答 - 「Fatal编程技术网」

Julia 如何退出/退出终端中包含的文件

我可以在文件“example.jl”中执行什么操作来退出/返回对命令行中include()的调用 julia> include("example.jl") 没有朱莉娅本身quit()只会终止julia本身 编辑:对我来说,这在交互开发代码时很有用,例如,当满足某个条件时,包含一个测试文件并从执行返回到julia提示符,或者只编译我当前正在处理的测试,而不重新组织代码。我不太确定您要做什么,但听起来您最好将代码作为函数编写,并使用返回来退出。您甚至可以在include中调用函数。@Dani

Julia 以Dict形式在给定范围/上下文中进行评估的最佳方法?

我有一个字符串,例如z[2],我想在上下文中eval它,例如Dict(:z=>1:10) 最好的方法是什么 我可以做得很好,但速度很慢 function replace_expr(expr, d::Dict) return expr end function replace_expr(s::Symbol, d::Dict) get(d, s, s) end function replace_expr(expr::Expr, d::Dict) return Expr(r

如何在juno中启动带有参数的julia解释器?

如何在atom的juno插件中启动带有参数的julia解释器(-p4)呢 例如,在命令行中,可以调用: julia-p4 您可以使用4个工作进程启动julia解释器。这不是在Juno中如何执行的答案,而是一个一般提示:您还可以在julia进程中管理工作进程。下面是REPL中的一个示例 julia> addprocs(4) 4-element Array{Int64,1}: 2 3 4 5 julia> rmprocs(2) :ok julia> workers()

Julia字符串串联提供了一个数组,该数组将元素分解为单个字符

我希望有人能理解这一点。我已经尝试连接Julia字符串一段时间了,但我仍然有一个问题。我有一个循环,我试图连接循环中的字符串和一个数字,然后将新值添加到一个数组中,当我在循环中打印值时,一切都很好,但打印数组时,数组的所有元素再次拆分为单个字符。 我的代码如下 a = 1 for i in nums_loop i_val = i[a] append!(const_names, (string(x, string(a)))) println(string(x, stri

将julia中的位数组{2}转换为数组{Bool,1}

因此,正如标题所解释的: 有没有办法将位数组{2}类型数组转换为数组{Bool,1}:类型数组 PD:问题的核心是,我试图用位数组{2}对数组{float64,2}求值,我不断得到以下错误: 错误:边界错误:尝试访问索引[Base.Slice(Base.OneTo(20))、Base.LogicalIndex(Bool[0;0;…;0;0])、Base.Slice(Base.OneTo(1))]处的20×1数组{Float64,2} 提前谢谢 @石匠 编辑: 因此,我一直在尝试分离数组{Floa

Julia中的操作系统特定路径分隔符

我找不到Julia是否提供操作系统特定的字符来分隔类似路径的字符串,例如PATH=c:\windows\systems32;c:\windows;。。。以及Linux中类似的环境变量。操作系统特定,因为Windows正在使用“;”和Linux:”。我都找不到一个助手函数,它已经进行了拆分,只是没有公开分隔符字符。但也找不到 自己定义这些很容易,我只是惊讶没有找到它们 非常感谢您的帮助不,默认情况下没有路径列表分隔符。你能做的就是 Sys.iswindows() ? ';' : ':' 不过,最

如何在Julia中对向量的数进行舍入

我用卡方分布的值生成了一个向量: using Plots, Distributions, Random c = rand(Chisq(11), 3) 3-element Vector{Float64}: 5.160148845738397 6.715592059742631 13.186986070816523 如何对该向量的值进行四舍五入或下限设置,以获得: 5 6 13 floor.(Int,c)(或floor.(c)如果您想要Float64结果。floor.(Int,c)(或

Julia 将许多标准方法扩展到新的自定义向量类型

我构建了一个新的向量类型: type MyType x::Vector{Float64} end 我想将许多标准方法(如加法、减法、元素比较法等)扩展到我的新类型。我是否需要为它们中的每一个定义一个方法定义,例如: +(a::MyType, b::MyType) = a.x + b.x -(a::MyType, b::MyType) = a.x - b.x .<(a::MyType, b::MyType) = a.x .< b.x +(a::MyType,b::MyTyp

使用Julia语言以csv格式导出线性混合效果模型输出

我不熟悉Julia编程语言,但是,我正在拟合线性混合效果模型,我发现很难将固定和随机效果估计保存在.csv文件中 可以找到一个示例代码: using MixedModels @time modelOutput = fit(lmm(Y~ A + B + (0 + A | group), data)) 关于如何使用数据帧获得固定(fixef(modelOutput))和随机(ranef(modelOutput))效果,有可用的参考资料 谢谢你的建议。好的,我真的花了时间为你做了这件事。CoefTa

Julia 为什么朱莉娅用如此复杂的方式表达这个表达?

我遵循julia的文档: julia> :(a in (1,2,3)) :($(Expr(:in, :a, :((1,2,3))))) 既然:(a in(1,2,3))==:($(Expr(:in,:a,:((1,2,3))),为什么朱莉娅要用这种方式表达这个表达式呢?$到底是什么意思?在我看来,$只是计算全局范围内的下一个表达式。我发现文档对此不清楚。$是插值命令,Julia使用此符号来插值字符串和表达式: julia> a=1; julia> "test $a" # =&

Julia 朱莉娅:如何使用字体

我假设Julia的struct与C中的struct一样。所以我不知道为什么会出现错误: 类型int64没有字段数据 Julia中的函数返回其中的最后一个表达式。在这种情况下,返回的是data=1,即data而不是MyData的新实例。只需在data=1之后添加带有new(data)的行,即可返回MyData的新实例,它将正常工作。通常您希望使用所谓的“外部构造函数”,即在类型本身定义之外定义的同名函数。您还希望将每个字段的类型指定为具体类型,例如本例中的Int: struct MyData

Julia 如何在包的build.jl中使用'sudo'

build.jl run(`sudo -S mkdir test`) 运行Pkg.build(“TestBuild”)时,将没有机会输入密码 julia> Pkg.build("TestBuild") INFO: Building TestBuild [sudo] password for guo: ==============================[ ERROR: TestBuild ]============================== LoadErr

Julia 如何向数组添加维度?(与“挤压”相反)

我永远都不记得怎么做了 你怎么能去 从向量(大小(n1))到列矩阵(大小(n1,1)) 或者从矩阵(大小(n1,n2))到数组{T,3}(大小(n1,n2,1)) 或者从数组{T,3}(大小(n1,n2,n3))到数组{T,4}(大小(n1,n2,n3,1)) 等等 我想知道如何获取数组并使用它定义一个新的数组,该数组具有额外的单态尾随维度。 也就是说,与挤压相反,你可以通过重塑来实现这一点 您可以为此定义一个方法: add_dim(x::Array) = reshape(x, (size(

Julia 如何在数据类型';谁的领域?

假设我有一个设计用于存储信息的类型,包括指向其他变量的链接: type MyList a::Int64 b::Int64 connections::Array MyList(a, b) = new(a, b, []) end 此链接函数将第二个变量的名称放入第一个连接列表中(如果我知道如何操作): 然后我可以通过以下方式检查连接: a1.connections -> [a2, a3, a4] 这样做: for conn in a1.connection

防止juno atom重新控制所有julia包

我对julia和atom都是新手,我想把他们两人都安排在一起。我安装了juno for atom,正在尝试运行julia脚本。我将Julia的包目录从~重新定位,因为在我的工作场所,该目录中的空间是有限的 如何使atom识别包位于不同的目录中 我目前正在CENTOS机器上工作。找到您的.juliarc.jl文件,然后插入行 ENV["JULIA_PKGDIR"] = # your package directory 顺便说一句,这个问题与Atom无关。julia安装跟踪软件包目录。如果在she

Julia中in的矢量化形式

我试图找到一个向量的索引,其中元素包含在另一个向量中。例如,让a=[2,4,6,8],b=[2,6],所需的输出将是向量[1,3]。我尝试了find(a.in b),但是a.in b是一个语法错误。(a,b)中的向量化形式引发维度不匹配错误,因为无法将向量广播到公共形状,而在(a,b')中允许广播,结果: true false false false false true false false 这不太理想。有什么建议吗?如前所述,参考问题/答案可用于解决此问题 julia>

如何在Mac OS X中升级到Julia 0.7

令人惊讶的是,我找不到一个直接的答案。此页面回答了2015年升级Julia的问题,并链接到Mac OS的此页面,但(a)后一页面以一个巨大的“此水龙头未积极维护”警告开始,(b)升级说明仅说明如何获取“最新开发版本”,这不是我想要的(我想要Julia 0.7,而不是1.0) 那么,如何在Mac OS X上将Julia从0.6升级到0.7?我使用命令“brew cask install Julia”安装了Julia 0.6。由于没有人回答您的问题,即使我不是一个好作家,我也会这样做 首先使用“br

find((x=y)和(b=a))的julia0.7语法是什么?

我一直在用茱莉亚0.5。以下代码有效,但不适用于0.7: a=[5,5,6,6] b=[0,0,1,1] c=find((a.==6) & (b.==1)) 由于Windows/GitHub的问题,我现在需要使用0.7。但是语法已经有了相当大的改变。如果我只有一个参数,我可以使用“findall”而不是“find”,例如 c=findall(a.==6) 但不支持使用“&”。有人知道如何在0.7中编写此代码吗 非常感谢您的补充就足够了。在&: 你加上就够了。在&: 令人惊叹的非常感谢

Julia 随机结实范围

我想做一个函数,如果我输入一个参数请求一个确定性响应,它将始终返回相同的数字,否则将给出一个请求的伪随机数。不幸的是,我能找到的唯一方法是重置全局随机种子,这是不可取的 有没有一种方法可以为一次伪随机数抽取设置随机数种子,而不影响全局种子或该种子的伪随机数序列的现有进程 例 最简单的解决方案是使用新分配的RNG,如下所示: using Random function get_random(n::Int, deterministic::Bool) if deterministic

Julia 闭包,匿名函数,为什么不在创建它们时作为值

在Julia 1.0中运行以下代码段 anon = Array{Any}(undef, 2) for i = 1:2 anon[i] = ()-> println(i) i += -1 end anon[2]() anon[1]() 结果是1和0。为什么不是2和1(创建i时的值)?我知道I+=-1不会影响for循环。给出了一个解释:对于每个循环,Julia都为I分配一个新的绑定,因此在每次迭代中I指向不同的内存位置

Julia中的偏导数

我试图用数值方法解朱莉娅的一个非线性方程组。我用的是纽顿方法。我唯一不知道怎么做的就是计算雅可比矩阵。到目前为止,我找不到计算偏导数的函数 我的系统: f(x1, x2) = 2*x2^2+x1^2 g(x1, x2) = (x1-1)^2 + (x2-1/2)^2 谢谢你的支持, 顺致敬意, Szymon.让我写下我在评论中提到的答案。您可以使用自动微分来计算偏导数: julia> using ForwardDiff julia> f(x) = 2*x[2]^2+x[1]^2

Julia 使用FOR循环和函数填充数组

我原以为下面的代码会用随机的1和0填充E,但事实并非如此。我不明白为什么 Pkg.add("StatsBase") using StatsBase function randomSample(items,weights) sample(items, Weights(weights)) end n = 10 periods = 100 p = [ones(n,periods)*0.5] E = fill(NaN, (n,periods)) for i in 1:periods

Julia非线性最小二乘包中的Levenberg-Marquardt

我有一个参数估计问题,可以通过非线性最小二乘优化来解决。我有一个带有两个未知参数的分析模型x[0]和x[1]。我有一个测量数据样本的向量,我用它编写成本函数 function cost_function(x) measured = data_read() # This is where I read my measured samples model = analytical_model(x) # I calculate the values from my

在Julia v.1.1.1中使用CPLEX解算器构建模型时,如何定义间隙?

你能帮助我如何在Julia v.1.1.1中用Gap制作一个CPLEX模型吗? 在我以前使用的版本中 Tsp=Model(solver=CplexSolver(CPX_PARAM_EPGAP=0.00009)) 但新版本在模型运行时出现了错误 Model(with_optimizer(CPLEX.Optimizer),CPX_PARAM_EPGAP=0.00009) ERROR: MethodError: no method matching Model(; CPX_PARAM_EPGAP=

Julia 如何解决重复密钥<;包装名称>;Pkg问题?

目标:使用Pkg模块的status命令获取已安装的软件包详情 程序: $ julia julia> ] (v1.1) pkg> status 输出: ERROR: Pkg.TOML.ParserError(258, 263, "duplicate key `Dates`") Stacktrace: [1] parse(::IOStream) at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1

Julia ArgumentError:新列的长度必须与旧列的长度相同

我在模拟循环中遇到了一个问题。问题是新矩阵的长度与旧变量的长度不同。我不确定问题是来自变量的初始值还是来自模拟循环 我使用的是juliav1.0.3 using Distributions using DataFrames n=5000 t=15000 gamma = 2; delta = 0.057; betta = 0.99; alfa = 0.47; miz = 1; roz = 0.75;

Julia 欧氏距离矩阵中的最小距离

我有一些代码可以计算一个矩阵中的每个笛卡尔坐标到另一个矩阵中的每个其他坐标之间的距离。对于每个坐标,将返回最小距离以及生成最小距离的坐标的索引位置 function MED3D(m1, m2) n1::Int = size(m1,1) Dist = SharedArray{Float64}((n1,3)) @sync @distributed for k in 1:n1 Dist[k,:] = MD3D(m1[k,:], m2, k) end

Julia 要求的文件在朱莉娅的哪里?

我正在使用mate-in-shell命令查找REQUIRE文件,但找不到它。 它与Pkg有关 shell> mate ~/.julia/ compiled/ clones/ prefs/ registries/ environments/ conda/ logs/ packages/ 您正在使用Julia 0.7+。 这意味着任何地方都没有REQUIRE文件 您可能正在寻找全局(或其他共享)环境的Project.to

Julia 涉及矩阵逆的跳跃约束

我试图求解一个n*n矩阵U,它满足各种约束,包括一些涉及子矩阵的逆的约束。然而,跳跃似乎不能处理反转,至少在没有一些额外的可逆性规范的情况下。下面是n=2的问题示例 using JuMP, Ipopt m = Model(with_optimizer(Ipopt.Optimizer)) A = [5 7; 7 10] B = [9 13; 13 19] C = [3 4; 4 6] nnodes = 2 @variable(m, U[1:nnodes, 1:nnodes]) A1 = U *

Julia 将RGB值的矩阵另存为图像

假设我有 c = RGB{Normed{UInt8,8}}[ RGB{N0f8}(1.0,1.0,1.0) RGB{N0f8}(0.0,0.502,0.0) RGB{N0f8}(1.0,0.0,0.0); RGB{N0f8}(1.0,0.0,0.0) RGB{N0f8}(1.0,1.0,1.0) RGB{N0f8}(0.0,0.0,0.0); RGB{N0f8}(0.0,0.502,0.0) RGB{N0f8}(0.0,0.0,0.0) RGB{N

Julia 激活虚拟环境

我想弄清楚Julia包是如何工作的,因为我喜欢集装箱化的环境。我真的很挣扎 在python中,我会做一些类似于condacreateenv--nameds的事情来创建一个环境,然后安装我将使用condaactivateds;康达安装 我想让Julia创建一个虚拟环境,但没有多大成功 从Julia REPL中,我可以键入]转到软件包管理器,然后我可以使用激活ds创建一个环境。从这里我可以添加重要的包addijuliadataframes-Plots 此时,我的环境变成了实际的文件夹,这很好 然后我

Julia Pluto笔记本中的可变输出

我正在冥王星笔记本上做一个编码项目。现在还为时尚早,但我很好奇为什么在上面的屏幕截图中,在quadorder旁边没有显示1000的值。它似乎输出了所有其他东西 它是在您的代码中触发。然而,我不认为这是预期的行为。它应该是一个注释,但解析器可能会看到并认为它是代码的一部分。 如果你把它放在两个引号之间,那么这就不会发生。 也就是说,这应该按照预期工作: quadorder = 1000 # like python Julia doesn't require ';' 否则,如果你不把它放在最后,它

Julia中线程的环境变量问题

我最近开始在Centos7服务器上使用Julia进行计算任务。但是我遇到了一个关于Julia使用的线程的问题。该服务器配备了80个虚拟CPU,在计算过程中无法使用其大部分CPU $ lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 80 On-line CPU(s) list:

Julia DSP:离散信号的卷积

这是你的电话号码。我想为两个简单的信号x[n]=0.2^n*u[n]和h[n]=u[n+2]写一个卷积,对于一些n值。我就是这样实施的: using Plots, DSP x(n) = if n<0 0 else 0.2^n end h(n) = if n<-2 0 else 1 end n = -10:10 conv(h.(n),x.(n)) 知道如何修复它吗?我通过一个新的REPL会话运行得很好: julia> using Plots, DSP [ Info: Pre

为什么Julia运行函数的速度比非函数的速度快?

所以,今天我决定试试Julia,我遇到了一些奇怪的事情,我不太明白原因,也找不到一个合适的答案来回答我的搜索问题,所以我来了 首先,我希望有一些东西可以作为Python的基准,我决定使用这段非常简单的代码 def test(): start = time() a = 1 while a < 10000000: a+=1 print(time() - start

如何检测Julia中的类型不稳定函数

设置:假设我有一个相当详细的软件(Julia),涉及几个模块的交互。我觉得它跑得比应该的慢。通常是函数,即编译器无法提前确定输出类型的函数 问题:如何检测这些类型的不稳定函数 我目前所做的:我使用分析工具,例如@tholy包来检测瓶颈,前提是类型不稳定的函数将出现在这里(由于它们的运行时间过长)。但真正好的是某种调试工具,在例程运行后,它将抛出一个函数列表,其中编译器无法提前确定输出类型。这可能吗 你可以试试探查器说的速度慢的比特 Julia 0.4也有。除了IainDunning的优秀建议外,

Julia ccall接口和符号问题

我正试图使用Julia的ccall函数与C库接口。所有类型和指针都是正确的,下面的函数调用成功地返回了正确的答案(为简洁起见,此处未显示变量定义和设置) 但是,如果我希望将函数名生成为符号,然后将其用作ccall的参数,则会失败 fname = symbol(string("vDSP_conv", "D")) ccall((fname , libacc), Void, (Ptr{T}, Int64, Ptr{T}, Int64, Ptr{T}, Int64, UIn

如何使用;单元格“;作为Julia函数的输入

我尝试使用一个单元格作为Julia函数的输入,如下所示 U=单元(2) U[1]=零(3,3) U[2]=零(3,3) 函数f_test{S在Julia中,矩阵的大小不是其类型的一部分。因此这里不需要单元格。事实上,这很好: U = Matrix{Float64}[zeros(3, 3), zeros(3, 1)] 这里我们创建了一个向量of矩阵{Float64}矩阵{Float64}是数组{Float64,2}的类型别名,意思是“二维数组的Float64。U的类型是数组{Float64,2}

如何在Linux上安装没有internet的julia 0.5,需要GLIBC?

我正在尝试在防火墙后面安装julia 0.5,也就是说 没有互联网和管理权限和 我还需要编译源代码 我已经遵循了为这个过程描述的所有标准说明(在git hub上) 然而,我的编译失败了,因为它要求GLIBC2.14版本,而我只安装了2.04版本。 我担心,即使我可以安装这个版本的GLIBC,它也会要求我在那之后再安装其他软件 我的问题是: 有没有办法安装所有需要的依赖项: git克隆后的“make-C deps getall”,显然没有安装所有这些 多谢各位 Boian我建议只使用通用二进制

Julia v0.6宏内部函数

是否有人可以解决我遇到的此宏错误,它仅在版本0.6中开始发生: mutable struct Foo x::Int end macro test(myfoo) quoteblock = quote myfoo.x += 1 end return quoteblock end function func(myfoo) @test myfoo println(myfoo.x) end foo = Foo(3) func(foo

Julia 为什么不';复制数组吗?

刚刚在我的程序中发现了一个令人讨厌的错误,因为Julia在定义闭包时不复制数组。这使得继续编程变得困难。这种设计选择的动机是什么 有没有关于将我的闭包状态与程序状态分离的建议 例如 l = [2 1; 0 0]; f = x -> l[2,2]; 那么f(1)=0,但是如果你改变l[2,2]=1,那么f(1)=1 你认为这是一个“终结”的假设不成立l不是一个“闭合”变量。它只是对从“外部”作用域继承的变量的引用(因为它没有在匿名函数中被本地重新定义) 下面是一个真正的闭包示例: 变量l现

Julia中的向量矩阵元素(按行)高效乘法

我想把矩阵A的每一行乘以相同的向量v。比如说 A =[1.0 3.0; 1.0 1.0] v = [1.0, 2.0] 我想输出 [1.0 6.0; 1.0 2.0] 到目前为止,我正在做: (v.*A')' 但我怀疑这在计算上是否有效,因为我将矩阵转置了两次 请注意,这个问题是针对Matlab()回答的。您至少有以下选项: (v.*A')”(OP的建议) v.*A(最短路径) mapslices(行->v.*行,A,2) 从@AborAmmar的帖子手动执行(最快方式) i、 e

如何在Julia语言中将RGB值转换为字符串十六进制三元组

我使用的是colors.jl包,有RGB值需要转换为十六进制字符串三元组值。最好的方法是什么?在colors.jl中找不到转换函数 谢谢您可以定义一个自定义的结构,它可以从AbstractRGB构造,并且具有适当的show重载,如中所示 import Base: show using ColorTypes struct RGBPacked r::UInt8 g::UInt8 b::UInt8 function (::Type{RGBPacked})(c::AbstractRG

如何在Julia 1.0中获取导入包及其版本的列表?

理想情况下,我希望在R中获得与之等价的SessionInfo(),它列出R的版本以及当前加载的所有库及其版本 我错过了Julia中类似的功能。我认为Pkg应该具备您需要的功能: using Pkg Pkg.status() 或者使用Julia 1.0.0包管理器,您可以: # Press the `]` key to access the package manager, then: (v1.0) pkg> status # Press backspace key to exit bac

在julia中的writedlm()未保存time_ns()结果

我正在使用一个在for循环中包含许多函数调用的程序。简而言之,是这样的: function something() .... .... timer = zeros(NSTEP); for it = 1:NSTEP # time steps tic = time_ns(); Threads.@threads for p in 1:2 # Star parallel of two sigma functions Threads.

在Julia Plots包中定义自定义调色板

我目前正在Julia中使用Plots包,pyplot作为后端。我可以选择调色板并通过 pyplot(color_palette=:delta) Plots.plot(x, y) 根据下面的Okade和Ito,定义和使用自定义调色板的语法是什么,以实现色盲友好性?谢谢 只需传递一个RGB矢量-请参阅此处的文档,但该特定调色板实际上已内置到绘图中-因此,您可以在绘图前指定theme:wong2来获得它,它将在会话期间更改调色板和颜色渐变。只需传递一个RGB矢量-请参阅此处的文档,但该特定调色板实际

Julia ifelse与isassigned中的意外行为

对我来说,这应该会产生字符串no,但是我得到 test = [1, 1, 1, 1] ifelse(isassigned(test, 5), test[5], "nope") 这是一个bug还是预期的功能 目前,我正在使用 BoundsError: attempt to access 4-element Array{Int64,1} at index [5] 但这在列表理解中不是很清晰。使用: if isassigned(test, 5) test[5] else &qu

Julia中单位根的计算

我想在Julia中有一个算法,取决于$n$,这样它可以生成单位的n根 (1,w^{1},w^{2},…,w^{n-1}。这样,对于每个1\leq i\leq n,我们有(w^{i})^{n}-1=0) 非常感谢您的合作 julia> roots(n) = map(cispi, range(0, 2, length=n+1)[1:end-1]) roots (generic function with 1 method) julia> roots(8) 8-element Vecto

上一页   1   2   3   4   5    6  ... 下一页 最后一页 共 85 页