2018-02-27に開催された 機械学習・ディープラーニングでPythonを使う嬉しさとツラミを分かちあう会 https://mlxse.connpass.com/event/77315/ での発表資料。

概要 この記事では、Python を使って シンセっぽい音を合成したり、MIDI 入出力をいじったり、和音を扱ったりして、音楽を楽しむ方法を紹介します。音楽や MIDI に関する基本的な知識は持っているけどプログラムから制御する方法は分からないという方や、Python で音が出せるのって面白そうだと思う方に読んでいただけると嬉しいです。 Python でシンセっぽい音を合成する Python でアナログシンセのような波形を生成して再生したり、音声ファイルとして書き出したりできる synthesizer というライブラリを作りました(macOS と Ubuntu しかサポートしていません、Windows の方、ごめんなさい)。このライブラリは Python から簡単に波形を生成・編集できるのが特徴ですが、サポートしている機能は現在のところ非常に限定的です。オープンソースのアナログシンセシミュ
9年ぶりとなるメジャーバージョンアップを控えて、盛り上がりを見せているDjango。この連載では最新のDjangoとDjango REST frameworkを用いたプロダクト開発の手法を、実務に使える形でお伝えしていきます。今回はDjangoの特徴を確認してからDjangoプロジェクトの環境構築についてをご紹介します。 はじめに データ分析や機械学習の隆盛に伴い、Pythonの人気は近年とても高まっています。それはNumPyやChainerといった便利なPythonライブラリが充実しているという理由がもちろん挙げられますが、Pythonが汎用プログラミング言語であることも人気の後押しになっています。 実際、「収集・分析したデータの二次活用として、Webアプリケーションを作りたい」という声をよく聞くようになりました。Pythonならデータ処理からWeb開発まで一貫して同じ言語で書くことがで
PyConJP2017の資料 Python Spark PySpark PyConJP 2017 Apache Spark
geffner@ubuntu:~$ # Make a local pipe for input to our openssl client geffner@ubuntu:~$ mkfifo pipe geffner@ubuntu:~$ # Create our openssl client, which will receive input from our pipe geffner@ubuntu:~$ openssl s_client -ign_eof -connect example.org:443 > /dev/null 2> /dev/null < pipe & [1] 98954 geffner@ubuntu:~$ # Begin writing the request to our pipe geffner@ubuntu:~$ printf "GET / HTTP/1.0\nH
- はじめに - 最近はWebスクレイピングにお熱である。 趣味の機械学習のデータセット集めに利用したり、自身のカードの情報や各アカウントの支払い状況をスクレイピングしてスプレッドシートで管理したりしている。 最近この手の記事は多くあるものの「~してみた」から抜けた記事が見当たらないので、大規模に処理する場合も含めた大きめの記事として知見をまとめておく。 追記 2018/03/05: 大きな内容なのでここに追記します。 github.com phantomJSについての記載が記事内でありますが、phantomJSのメンテナが止めたニュースが記憶に新しいですが、上記issueにて正式にこれ以上バージョンアップされないとの通達。 記事内でも推奨していますがheadless Chrome等を使う方が良さそうです。 - アジェンダ - 主に以下のような話をします。 - はじめに - - アジェンダ
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに Python入門系の記事では概して、Pythonのロギング機能の紹介で最初にlogging.debug()といったloggingモジュール付属の関数を呼ぶ方法を案内しています。 Python本家が提供するloggingの「基本チュートリアル」でもこの点で大差ありません。Python本家の基本チュートリアルでは、print()関数を使用する方法もロギングの手段として有効であるとし、タスクに応じてprint()やlogging.debug()を使いわけよう、という流れで記述されています。 コマンドラインスクリプトやプログラムで普通
今回はソケットプログラミングについて。 ソケットというのは Unix 系のシステムでネットワークを扱うとしたら、ほぼ必ずといっていいほど使われているもの。 ホスト間の通信やホスト内での IPC など、ネットワークを抽象化したインターフェースになっている。 そんな幅広く使われているソケットだけど、取り扱うときには色々なアーキテクチャパターンが考えられる。 また、比較的低レイヤーな部分なので、効率的に扱うためにはシステムコールなどの、割りと OS レベルに近い知識も必要になってくる。 ここらへんの話は、体系的に語られているドキュメントが少ないし、あっても鈍器のような本だったりする。 そこで、今回はそれらについてざっくりと見ていくことにした。 尚、今回はプログラミング言語として Python を使うけど、何もこれは特定の言語に限った話ではない。 どんな言語を使うにしても、あるいは表面上は抽象化さ
pyenv とか virtualenv を使いだしてだいぶ経つけど、メモ。 web 上の記事で、virtualenv と呼んでいるものが実は pyenv-virtualenv のことだった、というのがたびたびあって しばらく自分も勘違いしてました。 結局、最初に pyenv とか virtualenv の使い方を学ぶ時に参考にした こちらのサイトが一番わかりやすく、正確でした。 http://blog.ieknir.com/blog/pyenv-with-virtualenv/ pyenv https://github.com/yyuu/pyenv 1台のPC内で 異なるバージョンの Python を管理する ためのツール インストールは mac の場合 Homebrew から行うことができる $ brew install pyenv サンプル $ pyenv versions * 2.7
自分でAPIを叩いてもいいんだけど,ドキュメントが読みづらいし,結局リクエストに何のパラメーターが必要なのかパッと書いてないですし,なんか自分でハッシュ化したSigunatureをURLに付けたりしないといけなくて面倒なので,便利なライブラリを使いましょう. python-amazon-simple-product-api 超便利です. インストールなどはREADME読めばすぐに分かります. 実際に実行してみるとこんな感じです. regionを指定してやらないと海外のストアを検索しているのか,商品が見つからないので,region="JP"を忘れないようにしてください. In [9]: amazon = AmazonAPI(ACCESS_KEY, SECRET_KEY, ASSOCIATE_ID, region="JP") In [10]: product = amazon.lookup(I
こんにちわ。日々の作業の80%がターミナルで完結する原です。 最近、他チームに向けてCLI(コマンドライン・インタフェース)ツールを作成する機会がありました。 ツール動作環境がOS Xである点、モジュールのインストールが簡単である点、内部DSLの実装が比較的用意である点などを考慮し、Pythonで実装・配布しました。 また、自分自身も、普段の開発で行うような定形作業をPythonでスクリプト化することで、効率化しています。 シェルスクリプトでは実装が面倒くさいような外部サービスとの連携も、Pythonであればサードパーティのモジュールや例がたくさんあるため、実装が容易です。 当エントリでは、このように色々なシーンで活用できるPython製CLIツールの実装および配布方法をご紹介します。 サンプルとして「wonder_tool」という名前のCLIツールを作ってみましょう。 サンプルの仕様 こ
たまにインターネットと疎通がないマシンをデプロイしなきゃいけないこともあると思う。 今回は、そんな時にどうやって Python のパッケージを対象ホストにインストールすればいいかについて書く。 要約を先に書いておくと、まず OS のパッケージシステムを使って Python のパッケージマネージャ pip をインストールした上で、Wheel という Python のパッケージング形式でビルドしたものを使ってインストールすればいい。 検証の環境には CentOS7 を使った。 $ cat /etc/redhat-release CentOS Linux release 7.1.1503 (Core) $ uname -r 3.10.0-229.11.1.el7.x86_64 Python のパッケージマネージャ pip をインストールする まずは Wheel 形式の Python パッケージを
Python パッケージ管理技術まとめ (pip, setuptools, easy_install, etc) Python のパッケージ管理関係の情報がオフィシャルには整理されてなく、 またパッケージ管理まわりででてくるキーワードもいくつもあって分かり難いので完結にまとめてみました。 このドキュメント自体は少し長いですが、結論としては2015年1月時点では 原則 pip を使ってパッケージの管理を行う setuptools も広く使われているので入れておくとよい。そもそも pip のインストール時に自動的ににインストールされる distribute は 2013年に setuptools にマージされたので不要 という方針でよいと思います。 ただ少し古い情報ソースやパッケージのドキュメントを読んでいると distribute の利用が勧められていたり、 site-packages, e
Webページのスクレイピングと分析・可視化で使用したPython製WebクローラScrapyについて覚えたことについて記載する。 本記事はメモ程度の内容であり、情報の正確性については保証しない。必ず公式ドキュメントを参照すること。 サンプルコード サンプルコード1 import scrapy class QiitaCalendarSpider(scrapy.Spider): name = "qiita_calendar" allowed_domains = ["qiita.com"] start_urls = ["http://qiita.com/advent-calendar/2016/calendars"] custom_settings = { "DOWNLOAD_DELAY": 1, } def parse(self, response): for href in response
先日、2016年アドベントカレンダーのはてブ数の分析というブログ記事を投稿した。このデータの可視化には様々な技術が使われている。本記事では、どのような技術を活用して作成したのかについて説明する。 ソースコードはこちら。 概要 このVizは、QiitaとAdventarに投稿された、全アドベントカレンダー及びそこに登録された記事のはてなブックマーク数を元に、どのカレンダーや記事が人気なのか、あるいはQiitaとAdventarのどちらが人気なのかを視覚化することを目的として作成された。データソースは、Qiita及びAdventarに登録された、アドベントカレンダー2016の全カレンダーページである。カレンダーには記事のメタデータが含まれている。記事そのもののページやユーザページのクロールはしていない。 システムの概要 データの収集→ETL→BIという流れで処理を行った。 データ収集 Webク
PythonシェルのGUI環境である IDLE IPython といったものの中でTabキーを押すと、コマンド行シェルのように入力途中の文字列について候補が1つだけの部分が補完され、複数ある部分は再びTabキーを押すことで候補一覧を表示することができる。 Python(python(-[バージョン])コマンド)自体を端末から起動したときにも、以前Mandrivaを用いていたときには同様にTabキーで補完,候補一覧表示を行うことができるようになっていたのだが、Ubuntu(10.10時点)のPythonではTab文字がそのまま出るだけとなっていた。 端末から起動するPythonシェルの中でTab補完を用いるための処理と補完の操作 端末から起動するPythonシェルの中でTab補完を用いるためには rlcompleter readline の2つのモジュールをimport処理してTabキーを用
memoring コンピュータを研究に使うための私的メモ。Python、Fortran、Ubuntu、etc... トップページページ一覧メンバー掲示板編集 × matplotlib 最終更新: miyacdoor 2014年03月07日(金) 11:35:22履歴 Tweet 基本 インポート プロット 図を閉じる アクティブなオブジェクトの取得 カレントaxisを変更する。 GUIでの操作 インタラクティブモード 図の大きさ・配置・色 キャンバスのサイズ・解像度を設定する。 図の余白 背景を透明にする。 色の巡回パターンを指定する。 マルチプロット 複数の図を描く サイズの違う図を並べる AxesGrid toolkit マルチプロットをタイル状に配置する 凡例 凡例を表示 オプション 凡例の位置を自由に決める 凡例のフォントサイズを変える 凡例の表示順序を逆にする。 判例を複数列にし
はじめに 手元の環境でpythonのinteractive shellを利用した後、コンソールで入力した文字列のエコー表示がされなくなる問題に悩まされていた。 $ python3.5 Python 3.5.2 (default, Sep 19 2016, 02:49:52) [GCC 4.2.1 Compatible Apple LLVM 7.3.0 (clang-703.0.31)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> ^D>>> $ # ここで入力した文字列が表示されなくなってしまう $ stty sane #これで復活 readlineを有効にせずにbuildしていた模様 readlineを有効にせずにpythonをinstallしていた模様。 osx
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く