投稿

7月, 2018の投稿を表示しています

julia 0.6.4 : a feasible version for package DataFrames.: 必要度の高いパッケージから再インストールしよう。

julia 0.6.4 が、2018-07-09 19:09 UTC にリリースされました。 通常なら、大歓迎、大喜びなんですが、今回は、ちと、喜べませんでした。 原因は、不明です。でも、パッケージの依存関係がメチャクチャになりました。 仕方がないので、2018年7月25日の午後6時以降から ~/.julia フォルダーを全部捨てて、必要度の順に再インストールで、解決です。 いつもながら、リリースのアナウンスメントを見逃して2週間以上遅れて知りました。 理由は、julia 0.6.3 で、Pkg.update() したら、なんと、DataFrames.jl が、 動かなくなったためです。なにか、大々的な改変が行われて可能性を考えました。 もしやと, http://julialang.org/ を見てみたら、なんと、 julia 0.6.4 がリリースされていたではないですか。 喜び勇んで、 julia 0.6.4 をインストールしてみました。 それでも、やっぱり DataFrames.jl が動きません。 仕方がないので、期限のあるデータは、JuliaDB で保存です。 仕方がないので、パッケージ全部入れ直すことにしました。ターミナルに、 rm -rf ~/.julia これで、一気にパッケージをアンインストールです。 気が遠くなるような、 INFO: Initializing package repository /Users/xxxxxx/.julia/v0.6 INFO: Cloning METADATA from https://github.com/JuliaLang/METADATA.jl の末に、過去のPkg.add("") リストのコピー&ペーストで、パッケージを再インストールしました。 ところが、 julia> Pkg.status() 15 required packages: - Cairo 0.5.2 - DataFrames 0.10.1 - DataTables 0.0.3 - Distributions ...

julia の Array の vcat() を見直して、組み上げ速度を上げよう

はじめに julia 0.6.3 で、計算しながら Array を組み上げると、ちょっと時間がかかることがあります。 vcat() と、空の Array への代入はどちらが、早いのでしょうか? 下記の実験で判ったのは、 Array の中に文字列があると、Array の結合は、大幅に速度が落ちます Array を 数回、 vcat() で結合するなら、 vcat() の実用性は高いです 文字列ありで、100回程度以上、 vcat() するなら、先に入れ物の Array を作り、代入する方法を検討しましょう ということです。 数字だけの2つの Array を積み重ねてみよう まず、A と B という 10^4 × 3 の Array を作ります。 A = hcat( randn(10^4), randn(10^4), randn(10^4) ); B = hcat( randn(10^4), randn(10^4), randn(10^4) ); まずは、vcat() で、A と B を積み重ねます。5回、時間を測定してみましょう。 julia> for i in 1:5 @time C_vcat = vcat(A,B); end 0.125543 seconds (55.42 k allocations: 3.453 MiB) 0.000096 seconds (9 allocations: 468.984 KiB) 0.000380 seconds (9 allocations: 468.984 KiB) 0.000337 seconds (9 allocations: 468.984 KiB) 0.000291 seconds (9 allocations: 468.984 KiB) MacBook Pro が、電池駆動中のためか、少し時間にブレが出ています。 次に、先に入れ物 Array を、Any の型で、組んで代入する関数を作ります。 function Tum_Tum(A::Array,B::Array) size_A = size(A)[1]; C = Array{Any}(size...

MacOS X 10.11.6 で、python3.7 の scipy のインストール

MacOS X 10.11.6 で、python3.7 の scipy のインストールを pip から行ったら、Errno 13 が出ました。 % pip3 install scipy Collecting scipy Using cached https://files.pythonhosted.org/packages/07/76/7e844757b9f3bf5ab9f951ccd3e4a8eed91ab8720b0aac8c2adcc2fdae9f/scipy-1.1.0.tar.gz Error [Errno 13] Permission denied: '/usr/local/opt/python/bin/python3.7' while executing command python setup.py egg_info Could not install packages due to an EnvironmentError: [Errno 13] Permission denied: '/usr/local/opt/python/bin/python3.7' Check the permissions. 書き込み権限の問題らしいので、sudo を付けてみましたが、ダメでした。 ちょっと苦しいかもしれませんが、解決法がありました。 % brew install scipy ひとまず、これで、動きます。pip3 の update が出たら問題ないのかもしれませんが、2018年7月2日は、brew で乗り切ることにしました。 brew と pip が混在になるので、将来問題が起らないことを祈りたいものです。 python 3.8 が出たら、コンピューターを買い替えかな? 2018年11月12日追記: brew で upgrade された python3.7.1 で、 pip3 が何故だか動かなくなり、処置を施しました 。何故だか、3.7.1 の scipy は、pip3 でインストールできました。