裏 RjpWiki

Julia ときどき R, Python によるコンピュータプログラム,コンピュータ・サイエンス,統計学

Julia の小ネタ--034 13日の金曜日

2021年08月26日 | ブログラミング

次の 13 日の金曜日はいつか?
https://blog.goo.ne.jp/r-de-r/e/272d3d9769162586c72cf886bd89de27

は Dates パッケージで簡単に求まる。

2021/01/01 〜 2029/12/31 までの 13 日の金曜日は?

using Dates
dr = Date(2021):Day(1):Date(2029, 12, 31);
result = filter(dr) do x
   dayofweek(x) == Fri && day(x) == 13
end
#=
14-element Vector{Date}:
 2021-08-13
 2022-05-13
 2023-01-13
 2023-10-13
 2024-09-13
 2024-12-13
 2025-06-13
 2026-02-13
 2026-03-13
 2026-11-13
 2027-08-13
 2028-10-13
 2029-04-13
 2029-07-13
=#

確認

dayname.(result)
#=
14-element Vector{String}:
 "Friday"
 "Friday"
 "Friday"
 "Friday"
 "Friday"
 "Friday"
 "Friday"
 "Friday"
 "Friday"
 "Friday"
 "Friday"
 "Friday"
 "Friday"
 "Friday"
=#

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Julia の小ネタ--033 大きな配列も省略せずに全部表示

2021年08月26日 | ブログラミング

多くの言語において,REPL では大きな配列は全部表示しないで途中を省略して表示する。

それは便利だが,ときどき全部表示したいときもある。

そんなとき Julia ではこうする。

x = randn(50, 3);

制限なしにする
io = IOContext(stdout, :limit => false)
Base.print_matrix(io, x) # 全部表示される
Base.print_matrix(io, round.(x, digits=2), "", "\t", "\n") # 全部表示される
Base.print_array(io, x) # 全部表示される
x # REPL では省略されて表示される

制限ありにする(デフォルトに戻す)
io = IOContext(stdout, :limit => true)
Base.print_matrix(io, x) # 省略されて表示される
それ以外の用法でも同じ

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

PVアクセスランキング にほんブログ村

PVアクセスランキング にほんブログ村