English version available on dev.to はじめに matplotlibで作ったグラフの細かい調整は大変です。何をどういじったらいいのかを調べるのにアホみたいに時間がかかることがあります1。「何を」の部分の名前さえわからないこともあります。解決の糸口を掴んだ後も希望通りの見た目を実現するまでの最後のアレンジに苦労することが多いです2。これらの問題は__matplotlibのグラフがどういう要素で構成されていて、それらに対してどういうことができるかを知る__ことでいくらか改善されます。私はひたすらStack Overflowの回答を読むことでいろんなつまづきを時間をかけて乗り越えてきましたが、最近になってようやく公式チュートリアルにこの苦労を回避できたはずのヒントが書いてあることに気づきました。初期にざっと目を通したのですが「なるほど、よくわからん」と判断して読
bicycle1885.hatenablog.com こちらの記事を拝見していて、ちょっと気になったので注釈。 PythonやRを使っている人で、ある程度重い計算をする人達には半ば常識になっていることとして、いわゆる「for文を使ってはいけない。ベクトル化*1しろ。」という助言があります。 これは、PythonやRのようなインタープリター方式の処理系をもつ言語では、極めてfor文が遅いため、C言語やFortranで実装されたベクトル化計算を使うほうが速いという意味です。 昔からよくこういう言い方がよくされるが、本当にPythonのfor文は遅いのだろうか。 聞くところによるとRのfor文はガチで遅いそうだが、Pythonの計算が遅いのはインタープリタ方式だからでも、for文が遅いからでもない。もちろん、Pythonはインタープリタなので遅いし、for文だって極めて遅い。しかし、これはPyt
Almost all of these profilers live inside your process Before we start getting into the details of these profilers there’s one really important thing – all of these profilers except pyflame run inside your Python/Ruby process. If you’re inside a Python/Ruby program you generally have pretty easy access to its stack. For example here’s a simple Python program that prints the stack of every running
tox aims to automate and standardize testing in Python. It is part of a larger vision of easing the packaging, testing and release process of Python software (alongside pytest and devpi). tox is a generic virtual environment management and test command line tool you can use for: checking your package builds and installs correctly under different environments (such as different Python implementatio
バックナンバー: 9月号 | 8月号 | 6月号 | 5月号 | 4月号 | 3月号 | 2月号 | 1月号 @methane です。 ISUCON があってしばらく間が空いてしまいました。コミットやML上の議論も追えてないのですが、1月末にPython 3.7のbeta1 (=feature freeze)が予定されているために、Python 3.7 を目標にしている PEP たちがたくさんacceptされたので、それらを紹介しておきます。 PEP 540 UTF-8 mode https://www.python.org/dev/peps/pep-0540/ PEP 538 (locale coercion) とセットで、私が BDFL-delegate (PEP を accept する責任者) になった PEP です。 この PEP は当初はかなりのボリュームが有ったのですが、すでに
この記事は、LIFULL Advent Calendar 2017の2日目の記事です。 おはようございます。新UX開発部の二宮( @ninomiyt )です。 LIFULLではデータ解析や最適化の用途、もしくはAWS Lambda上の簡易ツール実装用途などでPythonがそれなりに普及してきました。数値計算寄りの(いわゆるデータサイエンティスト的な)メンバーも今はPythonを使うことが多く、コード量としては小規模なプロジェクトが多く、簡単なAPIやバッチ処理の実装までやってもらうこともあります。 そのレビューをやっていく中で、「これ使うともっと簡単に実装できるよね」っていうライブラリがいくつかまとまってきたので紹介します。 click コマンドラインパーサー用のライブラリで、デコレータを使って関数を簡単にCLI化できます。 標準ライブラリのargparseがありますが、clickではバリ
普段Perlを書いている自分がざっくりPythonについて調べて発表した時の資料が手元に転がっていたので、せっかくなので公開した。 普段、別の言語でWeb開発している人が、自分の言語のアレはPythonだとコレなのねって雰囲気わかるようになっているといいなと思って作ったけど、見返すとそうでもない気がする。 自分もPython初心者なので、「おいおいまったくまちがっているぜ! 」といったことがあったら教えてほしいです。京都に住んでいるのだけど、関西のPythonコミュニティの雰囲気もよく知らないので情報募集です。 あと資料で紹介しているブログのコードは以下においてある。自分がよくやる感じの薄い設計でかんたんなブログシステムをPythonで書いたらこんな感じかな~ってコードになっている。 github.com
Data is the core of predictive modeling, visualization, and analytics. Unfortunately, the needed data is not always readily available to the user, it is most often unstructured. The biggest source of data is the Internet, and with programming, we can extract and process the data found on the Internet for our use – this is called web scraping. Web scraping allows us to extract data from websites an
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 始めに:pandasの作者であるWes McKinneyさんがPythonのデータツール関連でとても興味深いblogを書かれているので、翻訳して日本のPyDataコミュニティに公開してもいいでしょうか、とお聞きしたところ、快諾をいただきましたので少しずつ訳して公開していこうと思っています。 2017/9/21(木) Apache Arrow、pandas、pandas2、そして最近の私の作業の大まかな方向性と視界が開けてきている未来に関して、これから一連のポストを書いていきます。このポストはその第一弾です。少々量があり、全体に技術的な色
この記事は 2017/9 に書かれたものであり、2019/11/26 現在とは状況が変わっています。公式ドキュメント(日本語訳)を参照してください。 時代は pipenv や— うたがわきき🔰💊 (@utgwkk) September 5, 2017 もう誰も,requirements.txt や,source ENV/bin/activate に頭を悩まされる時代は終わった! というわけで virtualenv の時代は終わり*1,pipenv の時代になりました. この記事は Python を書く人間が全員 pipenv を使うべきだという思いを込めて書きました.日本語で書かれた記事がまだぜんぜんないという事情もあります. pipenv とは Python のパッケージ管理ツールの pip と,環境切り分けツールの virtualenv を融合させたツールです.Ruby でいうとこ
Weird Python Integers Note: all of this code was run on my machine using Python 3.6.1. Not everything will work the same if you test using Python 2. That is suprising! It turns out that all “small integers” with the same value point to the same memory. We can use the Python built-in function id which returns a value you can think of as a memory address to investigate.
GitHubの Trending を眺めていたりすると時たま気になるpython製のツールやライブラリがあって試したくなったりします。 でもよく知らないし試したらすぐ消すようなものを普段の環境に入れるのも抵抗があって、その都度仮想環境を作ったりしていました。 try はそんな時に手軽に仮想環境を作って使い終わったらさくっと廃棄してくれる便利ツールです。 インストール tryで作る環境は2.7などでもいいようですが、try自体はPython3.4以上の対応のようです。 python3 -m pip install trypackage これ(またはpip3など)でインストールでき、コマンドラインからtryコマンドが使えるようになります。 使い方 try [試したいライブラリ名] [[ライブラリ2] [ライブラリ3] ...] これで新しい仮想環境が作られてライブラリがインストール&impor
#DockerでPython3.5で作成したWebアプリケーションの検証用環境を作成 PythonでWebアプリケーションを作成することはほんとんどなかった。ノンブロッキングI/Oの(node.jsやGolangとの比較検証等を考慮した)動作検証をする際にWebアプリケーションとして用意したかったので、その際、Docker for Macで簡単な環境を構築したので備忘録として記載。 Docker ComposeでPython3.5+uWSGI+Nginxの動作環境用のコンテナを用意した。 余談だが、uWSGIは「ウエスギ」という読み方が一般化しているようだ。「ユーウイスキー」と読んでいた。 ##Docker for Macのインストール Docker for Macを利用した。ここからDocker for Macをダウンロードして、Macにインストールする。 ##Docker Compos
tl;dr Read the Docs (RTD)でよくわからないバグでコンパイルできない -> Dockerを使うと簡単にデバッグできるよ。 問題 RTDにはじめてドキュメンテーションを登録してみたところ、エラーでまくり。 このGithubレポジトリをこのRTDとしてアップロード。 ローカルの環境ではうまくいくのにImportErrorがでていた。 やったこと 公式ドキュメンテーションにあるとおりRTDはそのドキュメンテーションビルド手順を完全に公開しています。また、ビルドに使う環境のdockerイメージも公開しているので、手元で同等の環境を作り、デバッグすることが容易です。 まず、dockerイメージをpullし、interactive shellで起動します。 export READTHEDOCS=1 # 追加分 mkdir -p /home/docs/checkouts/readt
以前、Docker + Alpine3.5 + Apache2.4 + Python2.7で、mod_pythonをソースコードからインストールしてみました。 Docker + Alpine3.5 + Apache2.4 + Python2.7で、mod_pythonをソースコードからインストールしてみた - メモ的な思考的な その時はPython2.x系で試したため、今回はPython3.x系でmod_pythonをコンパイル&インストールし、Hello worldしてみます。 目次 環境 まとめ 準備:prefork MPMで動作するApache2.4のDockerイメージを作成 masterをコンパイル&インストール ブランチ3.5.xをコンパイル&インストール masterにブランチ3.5.xをマージして、コンパイル&インストール masterのビルド用ファイルをブランチ3.5.x
バックナンバー: 4月号 3月号 2月号 1月号 PEP 545 -- Python Documentation Translations 3月号で紹介した、 Python 公式サイトで翻訳ドキュメントをホストする提案が受理されました。 PHP のドキュメントのように言語切替のUIが用意されて、より多くの人が母語に翻訳されたドキュメントにアクセスできるようにしていくことが目標です。 docs.python.jp で公開している日本語訳も、準備が整ったら docs.python.org に移管していくつもりです。 PEP 538 -- Coercing the legacy C locale to a UTF-8 based locale 1月号で紹介した C locale において UTF-8 を使うための提案である PEP 538 と PEP 540 ですが、私が BDFL delega
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く