我知道在shell中可以做到:
command1; command2
Run Code Online (Sandbox Code Playgroud)
在R怎么样?是否有一些语法可以将两个命令组合到一行上?
如果我有这样的元组列表/数组: [(15, 36, 39), (9, 40, 41)]
如何按第一个元素对这些进行排序?通过最后一个元素?按他们的总和?
说我有
struct MyStruct{T,U}
a::T
b::U
end
Run Code Online (Sandbox Code Playgroud)
我想定义一个自定义show
,以消除完整类型中的大量噪音。
例如,如果我创建以下内容:
z = MyStruct((a=1,b=2),rand(5))
Run Code Online (Sandbox Code Playgroud)
然后typeof
显示的内容比我想要的多得多:
julia> typeof(z)
MyStruct{NamedTuple{(:a, :b), Tuple{Int64, Int64}}, Vector{Float64}}
Run Code Online (Sandbox Code Playgroud)
如何以编程方式将MyStruct
from放入z
字符串中?
如果包作者为他们的复合类型定义了一个自定义show
函数,有没有办法轻松打印默认值show
?也就是说,在定制之前 Julia 会为复合类型显示什么?
我正在使用 Juno 单步调试复杂函数的代码,我想查看数据表示,但struct
由于自定义打印,未显示完整的结构。
如果我有这样的数组:
using OffsetArrays
a = OffsetArray(collect(1:5),(11:15))
Run Code Online (Sandbox Code Playgroud)
我可以通过以下方式遍历数组:
for (i,x) in enumerate(a)
println((i,x))
end
Run Code Online (Sandbox Code Playgroud)
并得到:
(1, 1)
(2, 2)
(3, 3)
(4, 4)
(5, 5)
Run Code Online (Sandbox Code Playgroud)
但我想要这个:
(11, 1)
(12, 2)
(13, 3)
(14, 4)
(15, 5)
Run Code Online (Sandbox Code Playgroud)
有没有办法获得真正的索引,因为我使用的是偏移数组?
我最近更新了我的 Julia 安装(至 v1.3),但我的包没有自动传输。将它们全部转移/添加到新版本的最简单方法是什么?
如果我在如下结构中有数组,我无法比较结构的相等性,因为数组是可变的?有没有办法让等式传递给数组,以便我得到true
for a([1,2,3]) == a([1,2,3])
?或者是这样做的唯一方法来扩展Base.==
?
julia> struct a
v
end
julia> a([1,2,3]) == a([1,2,3])
false
julia> a(1) == a(1)
true
julia> [1,2,3] == [1,2,3] # want the equality to work like this for the struct
true
julia> [1,2,3] === [1,2,3]
false
Run Code Online (Sandbox Code Playgroud) 有没有办法在不进入 REPL 的情况下运行(一组)Julia 命令?
例如julia.exe "using IJulia; notebook()"
不起作用。
我的最终目标是能够创建一个可点击的批处理文件,允许我和我与之共享的其他人打开 Jupyter,而无需担心命令行或 REPL。
我刚刚安装了 Julia v1.3.1
(以前v1.3.0
安装过),当我尝试时using ODBC
,出现以下错误:
ERROR: EOFError: read end of file
Stacktrace:
[1] read(::IOStream, ::Type{Int64}) at .\iostream.jl:361
[2] parse_cache_header(::IOStream) at .\loading.jl:1334
[3] stale_cachefile(::String, ::String) at .\loading.jl:1413
[4] _require_search_from_serialized(::Base.PkgId, ::String) at .\loading.jl:752
[5] _require(::Base.PkgId) at .\loading.jl:1001
[6] require(::Base.PkgId) at .\loading.jl:922
[7] require(::Module, ::Symbol) at .\loading.jl:917
Run Code Online (Sandbox Code Playgroud)
我试过rm ODBC
,然后重新加入,以及移除Manifest.toml
,并Project.toml
从我的v1.3
环境中的文件夹和新鲜add
-ing它。
我在我的全局 Julia环境中遇到了我想在 Jupyter 笔记本中使用的特定包的包兼容性问题。有没有办法告诉 IJulia 使用不同的环境而不是我的全局环境?