pandas でそこそこ大きいデータを扱う場合、その処理速度が気になってくる。公式ドキュメントではパフォーマンス向上のために Cython や Numba を使う方法を記載している。 Enhancing Performance — pandas 0.16.2 documentation が、軽く試したいだけなのに わざわざ Cythonや Numba を使うのは手間だし、かといってあまりに遅いのも嫌だ。そんなとき、pandas 本来のパフォーマンスをできるだけ維持するためのポイントを整理したい。 pandas に限らず、パフォーマンス改善の際にはボトルネックの箇所によってとるべき対策は異なる。pandas では速度向上/エッジケース処理のために データの型や条件によって内部で処理を細かく分けており、常にこうすれば速くなる! という方法を出すのは難しい。以下はこの前提のうえで、内部実装からみ
先日、Python の静的型チェッカーとして mypy を紹介しました。 mypy で静的型付け Python プログラミング - forest book 私には難しくてまとめきれないため、Guido が参照している漸進的型付け (Gradual Typing) も含め、また別の機会に、、、。 とか言っているうちに1ヶ月ほど経ってしまいました。 そうこうしているうちに PEP のドラフトも出てきたので区切りとしてまとめておきます。一通り調べたことを基にして書いていますが、私の誤解や勘違いもあるでしょうから怪しいところがあったら調べ直してみてください。もちろんツッコミも大歓迎です。 型ヒント (Type Hints) を導入するという提案 PEP 483 - The Theory of Type Hints | Python.org PEP 484 - Type Hints | Python
人気スクリプト言語「Python」の、バージョン3.5初のベータとなる「Python 3.5 beta 1」がリリースされました(Reddit)。現在リリースノートの下のリンクから、Mac OS X / Windows用のインストーラーファイル、ソースコードをダウンロードすることができます。 バージョン3.5の新機能は、unpackingの拡張、byte/bytearrayオブジェクトのための"%"フォーマットのサポート、行列積演算子"@"の追加、os.scandir()の追加、中断されたSystemコールのための自動リトライ機能の追加、generators内部でのStopIterationの取り扱いの変更、型アノテーションが追加されたtyping module、Windows Python launcherのvirtual environmentサポート、.pyoファイルの削除、マルチフ
The Bayesian method is the natural approach to inference, yet it is hidden from readers behind chapters of slow, mathematical analysis. The typical text on Bayesian inference involves two to three chapters on probability theory, then enters what Bayesian inference is. Unfortunately, due to mathematical intractability of most Bayesian models, the reader is only shown simple, artificial examples. Th
The rest of the Python community is currently doing lots of navel gazing over the issue of Python 3 adoption and the whole unicode/bytes divide. I am so over that and gave up caring when my will to work on WSGI stuff was leached away by how long it took to get the WSGI specification updated for Python 3. Instead my current favourite gripe these days is about how people implement Python decorators.
Matthew Griffithさんのブログ記事 MECHANICAL ELEPHANT - Becoming Productive in Haskell comming from Pythonの翻訳です。そういえばProductive Programmerって本にもHaskellを使って実証実験する話が出てました。Haskellは何度も勉強しようとして途中で止まっては忘れを繰り返しているので見習いたいと思います。 最近になってようやく私は生産性を高められるぐらいHaskellに熟達してきました。そこでHaskellを学習してきた経験について、それらを忘れてしまう前に私の考えを書き留めておこうと思います。今や私はWebプロトタイピングのほとんどをHaskellで行っています。まだ普段はPythonを使い、また楽しんでいるにも関わらず、です。 Data First(データが第一) これは動的
TheanoというPython用のライブラリがあります。 ちょっと勉強したので、チュートリアルを日本語に翻訳しつつ、使い方とかを紹介します。 Theanoとは まずはじめにTheanoとは、について。 Theanoはおそらく「テアノ」と読むのが多分正しいです。ピタゴラス(Pythagoras)の妻です。PythonとPythagorasをかけてるっぽいです。 何ができるかというと、簡単に言えば、行列演算ができます。以下の特徴を持っています(公式サイトより抜粋) 実行スピードの最適化: Theano は g++などを使って式をコンパイルし、CPUやGPU操作に変換します(つまり、pure Pythonなコードよりも速い) symbolicな微分: Theano は勾配を計算するために自動的にsymbolic graphsを組み立てます(訳注:つまり微分に便利だということ) 安定な数値計算のた
I just started learning Python and would like to read an Apache log file and put parts of each line into different lists. line from the file 172.16.0.3 - - [25/Sep/2002:14:04:19 +0200] "GET / HTTP/1.1" 401 - "" "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.1) Gecko/20020827" according to Apache website the format is %h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\ I'm able to open the f
Workshape.io を作った大きな成果の1つとして、私たちは珍しいデータセットにアクセスできるようになりました。このデータは、他のやり方では得難い情報を示してくれます。ユーザに、自分の求める仕事を”作業に配分する時間”で表してもらうことで、私たちは一次データを集めて区分できるだけでなく、それを今までになかったようなやり方で提示することもできるのです。 私たちの第2の検証では(最初の検証については「 肩書きに関する問題 」をご覧ください)、オープンソース界の原動力となっている主要なプログラミング言語のいくつかに注目すると面白いのではないかと考えました。具体的に言えば、2つの言語をどんな形で直接比較できるか確かめたかったのです。Python、Ruby、PHPなどの技術的・哲学的な違いについては誰もが知っていますが、そうした違いはその言語のユーザにどんな影響を与えるのでしょうか? どのプロ
このブログ中の pandas 関連のエントリをまとめた目次です。 最近 pandas 開発チーム と PyData グループ の末席に加えていただき、パッケージ自体の改善にもより力を入れたいと思います。使い方についてご質問などありましたら Twitter で @ ください。 目次につけた絵文字は以下のような意味です。 🔰: 最初に知っておけば一通りの操作ができそうな感じのもの。 🚧: v0.16.0 時点で少し情報が古く、機能の改善を反映する必要があるもの。 🚫: 当該の機能が deprecate 扱いとなり、将来的に 代替の方法が必要になるもの。 基本 簡単なデータ操作を Python pandas で行う 🔰 Python pandas でのグルーピング/集約/変換処理まとめ 🔰 また、上記に対応した比較エントリ: R {dplyr}, {tidyr} Rの data.tab
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く