のんびりしているエンジニアの日記

ソフトウェアなどのエンジニア的な何かを書きます。

Python

PythonでPickleを使ったデータ保存

皆さんこんにちは お元気ですか。私は元気です。今日はPickleを使ってみます。Pickleを使うとデータを文字でファイルに保存することができます。 これをすると、どうなるかって? 例えば途中の計算結果を自分のクラスごと保存することができるといったことが…

PyPyのインストール

皆さんこんにちは お元気ですか。TOEIC終わって疲れた。本日はPyPyについて What is PyPy(パイパイ) Pythonの実装の一つでございます・JIT コンパイラで動く為、高速。CPythonの代わりを目指したんだとかなんとか ・RPythonで書かれているとか(Wikipedia…

FrickrのAPIで画像を探してダウンロードする

皆さんこんにちは お元気ですか。私は元気です。今日はFrickrのAPIの画像検索を紹介したいと思います。 Frickrのデータ取得方法 準備するもの API Keyの獲得が必要です。 そのためには、Yahoo!への登録とAPIKeyの取得の申請が必要です。 コードをかくにあた…

Python リファクタリングに使えるCloneDigger

皆さんこんにちは お元気ですか。私は元気なのか・・・? TOEICのリベンジを果たす時が来るのだろうか。さてと、今日はリファクタリングに使えるソフトであるCloneDiggerを紹介したいと思います。 一言でいうと、ソフトウェアのクローンコードを検出=類似コ…

Scikit-Imageのインストールと画像表示

皆さんこんにちは お元気ですか。私は修論という壁に殺されそうでございます。最近は画像日和なので、今日はScikit-Imageを使ってみましょう。 Scikit-Imageとは 画像処理に関するアルゴリズムを集めたライブラリです。 無料で扱うことができて、ボランティ…

Pythonで並列分散処理(multiprocess)

皆さんこんにちは お元気ですか。私は元気です。さて、今日はPythonで並列分散処理を行ってみましょう 今回使うライブラリはmultiprocessです。まずは、引数を与えて出力をしてみましょう。 最も単純な例 #coding:utf-8 import multiprocessing import os de…

Pylearn2のインストール(OS:Mac10.9 Marvericks)

皆さんこんにちは お元気ですか。私は元気です。今日はPythonを使ってDeepLearningを動かすpylearn2をインストールしてみました。なかなか手こずりました 事前準備 さて、事前にインストールしなければいけないソフトウェアが5つあります。 PIL PyYAML IPyth…

PythonのTupleに代入ができないことを初めて知ったこの秋

皆さんこんにちは お元気ですか。私は筋肉痛です。PythonのTupleについてのお話 Opencvだと色をTuple形式で記載したりしますが(255,20,0)みたいな形式で計算でもして後で代入しようと思ったらエラーが出ました。tupleってこんなのです (1,2,3) 因みにエラ…

Pythonで使うrangeとxrangeについて

皆さんこんにちは お元気ですか。私は元気です。さて、今日はrangeとxrangeについて見てみましょう。 さて、Pythonを使う人であれば、この2つよく使いますよね Pythonでよく見るコードはこちらです。 for i in xrange(100): print i もちろんrangeで書く人…

Pythonで演算をするときはnumpyを使いましょう

皆さんこんにちは お元気ですか。私はそこそこ元気です。さて、今日はnumpyをオススメしたいと思います。 皆さんリスト内の合計を求める時、どうしていますか? こんなコードを書いていないでしょうか・・・・・・? for i in xrange(N): sum += list[i] こ…

Python リスト追加についての速度比較(append,内包表記など)

皆さんこんにちは お元気ですか。私は元気です。 実は情報技術者試験が終わったんです。ひゃっほー …受かってそうにないのはまた別のお話さて、今日は便利なPythonのリストについての速度を比較してみましょう 皆さんこんなコードありませんか list = [] for…

Pythonでテストをしてみよう(unittest)

皆さんこんにちは お元気ですか。私は元気です。本日はunittestについて勉強してみましょう。 unittestとはPythonでのテストのライブラリです。JUnitとかCppUnitが親戚に当たりますね。Pythonでは標準についているので、昨日使ってみるとかなり便利でした。…

アニメの顔写真をBag of Keywordsで分類してみた

皆さんこんにちは お元気ですか。私は眠いです。書いている時間が深夜なんて言えない。さて、今日はアニメの顔写真を分類してみます。 画像認識の分野において結構メジャーな手法であるBag of Keywordsを使います。 Bag of Keywordsの概要 Bag of keypoints,…

PythonでコマンドラインをParseしよう(OptParse)

皆さんこんにちは お元気ですか?眠いんですよおおおおさて、プログラムを書いた時にコマンドラインを解析したいと思ったことはありませんか? 私は有ります。通常のコマンドラインからの入力を取り込むには、sys.argvを利用すればできます。こんな感じ pyth…

Pipを使ったら変なエラーが出たよ!(unknown argument: '-mno-fused-madd')

皆さんこんにちは お元気ですか。私は元気です。今日、Pythonでpipを使ってライブラリを入れていたのですが、以下の様なエラーが出ました。泣きそう。 clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-fu…

PythonでHtmlを解析する(BeautifulSoupを使って)

皆さんこんにちは お元気ですか。私は元気です。さて、今日はBeautifulSoupを使ったhtmlの解析をしたいと思っています。 インストール sudo pip install beautifulsoup BeautifulSoupを使って解析する #coding:utf-8 import BeautifulSoup import urllib2 op…

Pythonでニコニコタグ解析、ネットワーク作ってみた

皆さんこんにちは お元気ですか。私は元気です。今回もニコニコタグ解析をやってみようと思います。最近ですが、タグでネットワークを構築してみました。 見た目が悪すぎて泣きそう。皆どうやって作ってるの。ネットワーク。まぁ一応作ってみたので公開して…

ニコニコデータセットでタグ一覧を作る

皆さんこんにちは お元気ですか。私は元気です。今から実家に帰ります。前回、ニコニコ動画データセットの集計を行いました。 今回はそのニコニコデータセットでタグの一覧を作ってみましょう。 import json import gzip import os import sys def createWor…

MySQLをPythonから弄る

皆さんこんにちは お元気ですか。私は元気です。さて、今まで掲載していた記事では全てConsoleから弄っていたのですが、 プログラムできないと不便でございます。MySQLをプログラムから弄ることができます。さて、必要なパッケージをpipを使ってインストール…

Pythonで可変長引数(*args,**kargs)

皆さんこんにちは お元気ですか。私は・・・・・いやあ実家涼しい素晴らしい。Pythonの可変長引数について記載します。 可変長の引数を実装する方法が2つあります。一つは変数に*を戦闘につけることによってTuple型として渡すことができます。 例題は以下の…

Pythonのネットワーク、グラフ解析 Network-Xを使って・・・

皆さんこんにちは お元気ですか?私はフリーダム生活です。お盆休み近くて少々嬉しい本日はネットワークXについて NetworkXはグラフやネットワーク解析のライブラリです。実はにこにこタグネットワークでもつくろうかなと考えていたりいなかったりということ…

ニコニコデータセットを使ったタグ解析

皆さんこんにちは お元気ですか。私は元気です。さて、今日はニコニコデータセットを使って、面白いことができるのではないかなと考えてみました。 まぁ内容はニコニコ動画の動画データです但し、2013年まで 出現タグランキング! #coding:utf-8 import json…

Pythonのリストをコピーする。知らないと結構困るかも!?

皆さんこんにちは お元気ですか。私は元気です。が。。。。酒飲むと寝れないね。C++だと関数への引数の指定でコピーだが参照渡しだが、ポインタを決めることができます。 int add(a,b){ a = a + b; } int add(&a,b){ a = a - b; } このような例の場合、上記…

Pythonで桁あわせをするには…

皆さんこんにちは お元気ですか。私は元気です。さて、今日はPythonでの桁合わせです。皆さんこんなことはないですか・・・?1とか2を0001とか0002で表示をしたい・・・・ もちろんできます! Pythonでも Int型 >>> "{0:04d}".format(1) '0001 因みに以下の…

Sklearnを使った機械学習

皆さんこんにちは お元気ですか。私は元気です。さて、今日はSklearnを使ってみたいと思います。 Sklearnとは? Pythonで使える機械学習のライブラリです。 インストールですが、以下のとおり sudo pip install scikit-learn How to Use 基本的に殆どの機械…

【ネタ】アッカーマン関数によるプログラミング言語最速決定戦?

皆さんこんにちは おげんきですか?私はげんきです。本日は最速決定戦やります。いやはやC++がはええええとかいいつつ 他の言語どうだっけなんて思う常日頃です。 エントリー 6つの言語で行いました C++,Java,PHP,Python,Ruby,Javascript 種目 アッカーマン…

もう怖くないPythonの順番変更

皆さんこんにちは お元気ですか。私は元気です。 なんかLineのネタ記事が大盛況…少々驚きです。さて、本日はPythonのsortedメソッドについて 皆さん、listの内容の順番を並び替えたいこと、ありませんか?そんな時にこの関数を利用して、順番を変更すること…

PyQt ボタンクリックによるイベント動作

皆さんこんにちは お元気ですか?私は普通に生きています。さて、今日はPyQtにてボタンクリックによる動作を実行したいと思います。まずはサンプルコードを御覧ください。 #coding:utf-8 import PyQt4.QtCore as QtCore import PyQt4.QtGui as QtGui import …

Pythonのデコレータ

皆さんこんにちは お元気ですか?私はお酒をのむぞおおおおおさて、デコレータと呼ばれるPythonの機能について お話したいと思います。 デコレータとは? 関数を修飾してくれるPython独特の機能ですね もうこれ、例ないと意味不明でしょう。 因みに@helloが…

PyQtのインストール

皆さんこんにちは お元気ですか?私は元気です。さて、今日はPyQtのインストールです。 PyQtとは、QtをPythonで扱うためのライブラリです。なぜか、結構手こずったので、残しておきます。 SIPとqtが必要です。qt4(1) インストールについて - のんびりしてい…