问题标签 [julia]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1182 浏览

matplotlib - Julia 中的 PyPlot 给出“没有名为站点的模块”错误

我今天开始和 Julia 一起玩了。我开始关注Steven 的MIT 教程。但是,当我到达 Plotting 部分时,我尝试使用以下命令导入 PyPlot:

但是它给了我以下错误:

我使用 Canopy 作为我的 Python 安装,因此 pyplot 所需的所有模块应该已经在机器上可用。

注意如教程中所示,我确实在 Julia 中使用 Pkg.add("PyPlot") 来在 Julia 中安装 pyplot。

0 投票
7 回答
22536 浏览

julia - 在 Julia 中初始化数组

我正在尝试创建一个包含两个数组的数组。但是,a = [[1, 2], [3, 4]]并没有这样做,它实际上连接了数组。这在 Julia 中是正确的:[[1, 2], [3, 4]] == [1, 2, 3, 4]. 任何的想法?

作为临时解决方法,我使用push!(push!(Array{Int, 1}[], a), b).

0 投票
2 回答
1945 浏览

statistics - 计算 Julia 的置信区间

基本上,我有一个数组,其中包含来自人群的随机样本。我正在尝试计算真实总体均值的 95% 置信区间。

我研究了两个库,但它们似乎只支持两个样本 t 检验。(我不擅长统计,所以我可能遗漏了一些东西。)

0 投票
1 回答
616 浏览

arrays - 类似 Fortran 的数组,例如 Julia 中的 FArray(Float64, -1:1,-7:7,-128:512)

一般来说,对于 Julia 来说,基于 1 的数组是一个不错的决定,但有时需要使用类似 Fortran 的数组,其索引跨越 ℤ 的某些子范围:

有用的地方:

在教授所著的《双曲偏微分方程的数值解》一书中的代码中。John A. Tragenstein 这些负指数被大量用于边界条件的鬼细胞。教授的 Clawpack(代表“保护法包”)也是如此。Randall J. LeVeque  http://depts.washington.edu/clawpack/ 还有许多其他代码,这些索引是自然的。所以这样的辅助类对于快速翻译这些代码很有用。

我刚开始实现这种辅助类型,但由于我对 Julia 很陌生,您的帮助将不胜感激。

我开始:

输出:

由于我对 Julia 完全陌生,因此我将不胜感激任何建议,尤其是能够提高效率的建议。

[编辑]

该主题已在此处讨论:

https://groups.google.com/forum/#!topic/julia-dev/NOF6MA6tb9Y

在讨论期间,阐述了两种使用任意基数的 Julia 数组的方法: 基于 SubArray,示例用法是使用辅助函数:

请注意,没有完全检查边界更多细节在这里: https ://github.com/JuliaLang/julia/issues/4044

目前 SubArray 存在性能问题,但最终它的性能可能会有所提高,另请参阅:

https://github.com/JuliaLang/julia/issues/5117

https://github.com/JuliaLang/julia/issues/3496

除了检查两个边界之外,目前具有更好性能的另一种方法:

获取索引和设置索引!FArray 的方法受到 base/array.jl 代码的启发。

用例:

0 投票
1 回答
1222 浏览

regex - 在 Julia 中加入正则表达式

有没有办法join(并且通常操纵)Regex只处理正则表达式内容(即不将r修饰符视为内容的一部分)。所需的输出z是:

0 投票
2 回答
4088 浏览

julia - 仅当尚未在 Julia 中定义时才分配

仅当变量未定义(或虚假)时,是否有简单的 Julia 语法分配给变量?我的意思是像 Ruby 的x ||= NEW_VALUE. 我已经尝试过x || x=NEW_VALUE,但它会引发错误。除非语法简单,否则我可以使用什么函数来检查变量是否已定义?

0 投票
2 回答
14239 浏览

julia - 搜索文件夹中的文件

我正在尝试使用 Julia 解析大量文本文件,并且我想遍历文件名数组,而不是输入一个函数调用来单独读取每个文件。到目前为止,我一直无法找到一种方法来在文件夹中搜索与模式匹配的文件。

是否有一个基础库 Julia 函数将返回给定文件夹中的所有文件名,匹配给定的字符串模式?

R 中的等效函数是list.files(),如果这有助于传达我想要的内容。

0 投票
1 回答
570 浏览

julia - DataFrames 使用错误类型封装函数?

我使用 JuliaStudio 安装了 DataFrames 包,没有任何问题。然后我尝试使用以下代码复制这里的简单示例

并得到这个错误:

在包文件夹中,我打开文件io.jl并看到了可读的类型!期望与上面错误中显示的内容不匹配。

所以我将readtable!定义中的第二种和第三种类型分别更改为IOStreamInt64,以匹配上面显示的错误。然后我试着跑

再次,并得到相同的错误,但不同的功能:

如何在readtable()不需要编辑所有包函数中的类型的情况下成功读取我的文件的函数?

0 投票
2 回答
12868 浏览

performance - Julia (Julia-lang) 与 Fortran 和 Python 的性能比较

我改编了一个简单的程序来计算和绘制 Julia 的运动涡流来测试语言,我也用 Python 编写了它,没有特别的原因。

(免责声明:1.我读过的关于stackoverflow的每一次性能比较都因不全面/正确/写得好/相关等而受到抨击-我不是假装这是一个真正的比较,我只是想知道如何进行Julia 更快。2. 我知道 python 可以被优化,在 Cython 等中实现,这不是这个讨论的一部分,它只是在这里作为 Julia 和 Python 中等效函数的参考。)

代码和性能结果可以在 gist中看到。

Julia 的性能明显慢于 Fortran。执行计算本身所花费的时间是(50000 个时间步长):

Julia 比 Fortran 慢得多(约 44 倍),差距缩小,但在 10 倍以上的时间步长 ( 0.50s vs 15.24s) 时仍然很重要。

这些结果与 Julia 主页上显示的结果有很大不同。我究竟做错了什么?我可以将 Julia 修复得更快吗?

我已经浏览了Julia 性能提示页面和 Julia 主页上比较背后的代码,但我没有什么需要解决的。

同样有趣的是,Julia 加载 PyPlot ( 5secsish!!) 的速度非常慢,而且读取文本文件的速度也比 Python 慢得多。我能做些什么来改善这些事情吗?

请注意,上述时间并未显示 Julia 和 Python 的加载时间,它只是计算 AFAIK 所需的原始时间 - 请参阅代码。对于fortran,这就是全部。在每种情况下,绘图已大致关闭,以便进行速度比较。

计算机:Intel i7-3770,16GB 内存,SSD HD,操作系统:Ubuntu 13.10 64bit.,Fortran:gfortran,GNU Fortran (Ubuntu/Linaro 4.8.1-10ubuntu9) 4.8.1,Julia:版本 0.3.0-prerelease+396 (2013-12-12 00:18 UTC),提交 c5364db*(0 天老主),x86_64-linux-gnu,Python:2.7.5+


更新:

根据 ivarne 的建议,我重写了 Julia 脚本(在上面的要点中进行了更新):将 grunt 工作封装在函数中,声明所有内容的类型并将矩阵的不同元素拆分为适用的不同数组。(我在很多地方都包含了 Float64,因为我尝试使用 Float32 看看是否有帮助,但大多数时候都没有)。

结果如下:

50,000时间步骤:

500,000时间步骤:

综上所述:

  • 你可以加快 Julia 的速度。

  • 根据您如何衡量它的性能,您可以显着影响 Julia 的明显速度。

0 投票
2 回答
161 浏览

regex - 基于捕获数的 PCRE 重复 -- (\d)(.{\1})

我想也许这个简单的模式会起作用:

但不是。

我知道这在 Perl 中很容易,但我在 Julia 中使用 PCRE,这意味着很难嵌入代码来动态更改表达式。