りんごがでている

何か役に立つことを書きます

EzXML.jlを作った話

先月ですが、EzXML.jlというXMLやHTMLを扱うためのパッケージをリリースしました。 EzXML.jlはlibxml2というC言語で書かれたメジャーなライブラリのラッパーなのですが、それをJuliaでラップする過程で色々と工夫がありましたので、その辺を共有したいと思い…

RユーザーのためのJulia100問100答

R Adevnt Calendar 8日目の記事です。大幅に遅れて大変申し訳ないです。 この記事ではR言語ユーザーのために100問100答形式でJuliaを紹介していこうと思います。 Julia言語 Juliaってどういう言語なの? Juliaは高レベルでハイパフォーマンスな技術計算のため…

Julia現状確認 (言語編)

これはJuliaアドベントカレンダー1日目の記事です。2016年におけるJuliaの「現状」を確認していこうと思います。 Julia言語とは Juliaとは一体どのような言語でしょうか。julialang.orgの最初の説明を用いると、「他の技術計算環境のユーザに馴染みのある構…

Julia言語の0.5の変更点

9月20日にJulia言語の最新版である0.5がリリースされました。Juliaのメーリングリストに投稿されたアナウンスメントはこちらです: https://groups.google.com/d/msg/julia-users/J2DiH1GnM8o/aO2Ku8o-CgAJ きっと近いうちに本家のブログで詳しい変更点の紹介…

JuliaからRを使う

先日のWACODE夏期講習でRCall.jlのデモをしたら、やはりウケが良かったようなので改めて紹介をします。 RCall.jlはJuliaからR言語の機能を呼び出すツールです。データの受け渡しからREPLでのインタラクティブな実行・プロットも簡単にできます。Juliaを使っ…

『R言語徹底解説』(共立出版)をいただきました!

先日、出版社の方から新刊の『R言語徹底解説』(共立出版)をいただきました。ありがとうございます。 R言語徹底解説 / Hadley Wickham 著 石田 基広 市川 太祐 高柳 慎一 福島 真太朗 訳 | 共立出版 この本は、R言語界では知らない人のいないHadley Wickham氏…

Juliaのユニットテスト

Julia Advent Calendar 9日目の記事です。なんとか途切れさせないでいきましょう。 Juliaと言えばユニットテストが書きやすい言語として有名です[要出典]。 何故書きやすいのかといえば、もちろんマクロがあるからです。 マクロのおかげで、よく分からないア…

Juliaの多分あまり知られてない関数達

Julia Advent Calendar 7日目の記事です。今週ひとりアドベントカレンダーの様相を呈してきているので誰か助けてください。 JuliaのBaseモジュールの関数はたくさんあるため、意外と知られていない関数もあると思います。 ですので、個人的によく使うなぁと…

Japan.R 2015でJuliaの布教してきました

Julia Advent Calendar 6日目の記事です。 昨日のJapan.R 2015のLTでJuliaの布教をしてきました。 5分で55枚のスライドをやり切り、時間ピッタリで無事終えました。 Juliaの速さを早口で表現 #japanR— さわみる (@sourmilk) 2015, 12月 5 だそうです。 当日…

Joneswareの世界

Julia Advent Calendar 2日目の記事です。 JoneswareというのはJulia界の重要人物のひとりであるdcjonesさんの作ったパッケージをさしています。 実は私のJulia Summer of Codeプロジェクトのメンターになってくれた方で、今年のJuliaConでお会いしたことも…

Julia v0.4 新機能&変更点まとめ

待ちに待ったJuliaの新バージョンv0.4がリリース直前です! 現在はRC1RC2が利用可能ですので、新しいもの好きの方はダウンロードして試すことができます。 Releases · JuliaLang/julia · GitHub v0.4はかなり長い間開発されてきましたので、新機能が盛りだく…

Juliaのシンボルとは?

先ほど何となくstackoverflowのJuliaに関する投稿を見ていたら、なるほど確かに最初は分からないかもしれないなと思う疑問と、それに対する分かりやすいKarpinski氏の回答があったので紹介しようと思います。 What is a "symbol" in Julia?stackoverflow.com…

株式会社リブセンスのTechNightに参加してきました

リブセンスのエンジニアの方にJuliaの話をしてほしいとの話を受けまして、LTですがJuliaのお話をしてきました。 このようなエンジニア中心の勉強会を毎月行っているようです。 LT大会「TechNight」、7/27(月) 19:30〜開催します。 | LIVESENSE made* せっか…

「シリーズ Useful R データ分析プロセス」をいただきました

著者の福島さんより、「データ分析プロセス」(共立出版)の御恵投いただきました。ありがとうございます。 この本はシリーズ Useful Rのうちの一冊のようです。よく見ると私のラボのOBである門田先生もトランスクリプトーム解析の本をこのシリーズで書かれて…

Julia Summer of Code 2015に採択されました

Julia Summer of Codeという誰も知らないプログラムに採択されました。 この手のプログラムに採用されたのは初めてなので、嬉しくてあちこちで言いふらしています(ウザくてごめんなさい)。 概要としては、最近話題(?)のJuliaというプログラミング言語で夏の…

JuliaTokyo #3 を開催しました

昨日(4月25日)JuliaTokyo #3を開催しました。 イベントページはこちらです。 JuliaTokyo #3 (2015/04/25 14:00〜)juliatokyo.connpass.com 当日の発表資料などはこちらにあります。 JuliaTokyo #3 - 資料一覧 - connpassjuliatokyo.connpass.com 今回私はLT…

Juliaではfor文を使え。ベクトル化してはいけない。

タイトルはいささか誇張です。最後のセクションが一番言いたいことなので、そこまで読んでいただけたら嬉しいです。 きっかけは昨日こんなツイートをしたら割りとRTとFavがあったので、分かっている人には当たり前なのですが、解説を書いたらいいかなと思っ…

JuliaによるNelder-Meadアルゴリズムの実装

Optim.jlというJuliaの関数最適化パッケージの出力が気になったのでプルリクエストを投げたら、ちょっと議論になり色々Nelder-Meadアルゴリズムを調べる事になってしまい、その副作用で少し詳しくなったのでJuliaで実装を書いてみました。Optim.jlの実装より…

Juliaのコードを勝手に最適化してみた

こちらのスライドのパフォーマンスが気になったので、ちょっと速くしてみました。 Juliaのススメ from Ai Makabi Juliaのススメ 気になったのはコレです。 おかしいっ、我らがJuliaがPython + NumPyに負けるわけないっ。 早速いじってみましょう。 元コード…

PythonistaのためのJulia100問100答

この記事はJulia Advent Calendar 2014の12日目の記事だったはずのものです(遅れてすいません...)。 Pythonユーザーとしての自分に対して100問100答形式で気になるだろうことを列挙したものになっています。 全体は以下の様なセクションに分かれています。 J…

Unicodeプログラミングのすゝめ

Julia Advent Calendar 2014 4日目の記事です。 以前、工学部の友人から「変数mとuの積をmuと書いたと思ったら、パラメータμをmuと書いてたりするFortranのコードがあって混乱する」という話を聞きました。 最近の言語はUnicodeを使える物も多いですが(Unico…

X分で学ぶJulia

2016/11/20 追記: この記事は内容が一部古くなっています。最新版はこちらを参照して下さい Julia Advent Calendar 2014 1日目の記事です。 まだまだJuliaは一般に知られていない言語ということもありまして、Juliaの基本的な機能を最短で学ぶ記事を初日に書…

Consensus CDSの領域をGRangesオブジェクトにする

Bioconductor - TxDb.Hsapiens.UCSC.hg19.knownGeneは便利なのですが、ある遺伝子に対応するtranscriptが多すぎてどうしたものかと困ってました。 で、UCSCのゲノムブラウザで見るとConsensus CDS(CCDS)のアノテーションもあるのですが、このBioconductorの…

RStudioから使えるR Markdownで日本語のPDFを作成する

RStudioではRの実行結果を埋め込んでドキュメントやレポートを作成するのにLaTeXベースのものとMarkdown(の亜種のR Markdown)ベースのものが選べるのですが、R Markdownから日本語を含んだレポートをPDF化するのに手間取ったのでその方法を記述します。 私の…

JuliaTokyo #2 でモンテカルロ法について話してきました

9月27日の JuliaTokyo #2 で『Juliaで学ぶ Hamiltonian Monte Carlo (NUTS 入り)』と題してHamiltonian Monte Carlo (HMC) とStanで使われているNUTSについてお話してきました。 JuliaTokyo #2 (2014/09/27 14:00〜) JuliaTokyo #2 - connpass 内容 Juliaで…

コマンドを並列に実行するGNU parallelがとても便利

最近のコンピュータは複数のCPUコアを持っているので並列にコマンドを実行することができます。 たくさんの同じようなファイルに同じ処理を実行することは、私のやっているバイオインフォマティクスではよくあります。 しかし自分で並列に実行するスクリプト…

statisticsにt検定を実装しました

ちょっとHaskellのstatisticsパッケージを見ていたら、統計的仮説検定に何故かt検定が無かったのでチョイチョイと実装しました。 https://github.com/bos/statistics/pull/66 masterの一歩手前のconfidenceブランチに取り込まれましたので、そのうち使えるよ…

JuliaTokyo #1 を開催しました

日本で(多分)最初のJuliaの勉強会 JuliaTokyo #1 を開催しました。イベントページはこちらです。 http://juliatokyo.connpass.com/event/6891/ 当日は40人ほどの参加者が集まり、いつの間にJuliaがそんなに一般化したんだという感じでしたが、Julia歴1週間と…

HaskellのFusionがあれば速度と抽象化を両立できる

データの分析をする際には配列やベクトルは欠かせないデータ構造です。 大体どの言語にも大体配列は用意されていて、そこにサンプルのデータ等を入れて統計量を計算したり関数に渡して回帰をしたりするわけです。 ベクトルという単位でデータの塊を扱うもの…

Pythonのコマンドライン引数処理の決定版 docopt (あとJuliaに移植したよ)

Pythonをよく使う人にはよく知ってる人も多いのですが、docoptという便利ライブラリがあります。 docoptはargparseやoptparseのようなコマンドライン引数をパースするライブラリなのですが、その発想がコロンブスの卵なのです。 例えばPython標準のargparse…