2016-01-01から1年間の記事一覧

vim8.0をインストールする

Rails開発用にvimの環境を整えようと思います。 今年、vimのメジャーバージョンアップがあったんですね。知りませんでした。せっかくなので、新しいバージョンを利用しようとvimアップグレード作業をしたのですが、これがかなりしんどかった。たかだかvimを…

CnetOS上にRails環境を作成する

はるか昔にphpで作成したwebサイトをRailsで作り直したい。ということで、まずはRails環境を作ります。Railsに関しては、ずっと前に「Ruby on Rails チュートリアル」を一度やっただけです。 環境作成にあたって、以下のサイトにお世話になりました。 Linux…

CentOS7.2のpyenv上python3.5.2環境でtkinterを利用する方法

pandasからグラフを表示させようとしたところ、ちょっと躓いたのでそのメモです。環境は件名のものです。 plot関数を呼び出したところ、'_tkinter'がないよと怒られました。 >>> import pandas as pd >>> import numpy as np >>> import matplotlib.pyplot a…

CentOS7にGUI環境を追加する

CentOS7となり、内部の仕組みやコマンドが変わったことで、地味に大変ですね。分からない都度ネットで調べるのですが、調べた内容も、僕の薄い脳みそではあっという間に忘れていきますし。あはは。 ということで、CentOS7ミニマムインストール環境にGUI環境…

pandasで移動平均乖離率を求める

以下の前回の続きです。 csvファイルをpandasに取り込む - goodbyegangsterのブログ 取り込んだドル円日足データをもとに、25日単純移動平均の乖離率を求めたいと思います。pandasけっこう便利なんで驚きました。 初めに、csvファイルをpandasに取り込みま…

csvファイルをpandasに取り込む

分析したいcsvデータをpandasに取り込んでみます。 例として、ドル円の日足データを取り込みます。実際のデータは以下で、m2jのサイトからダウンロードしてきました。 日付,始値,高値,安値,終値 2016/01/04,120.21,120.44,118.69,119.43 2016/01/05,119.33,1…

pandasを触ってみる

株価や為替のデータをあーだこーだいろいろ分析したいぞ、ということでpandasを触ってみます。 公式サイトで「10 Minutes to pandas」とnew user向けのintroductionがあるのですが、出てくる用語がそもそもよく分からない。 10 Minutes to pandas — pandas 0…

Elasticsearchの検索結果をcsv形式で取得する

Elasticsearchの検索結果をcsvで取得できると良いのに、と思っていたところ、jqってコマンドがあるんですね。 Linux系のコマンドラインで利用できるコマンドで、jsonをsedとかawkとかgrepみたいにできるやつらしいです。 公式サイトはこちら。 jq こちらのサ…

四季報をネガポジ分析する

四季報のデータをネガポジ判定してみました。 四季報の文章を、mecabで形態素分析して(辞書はIPA辞書を利用)、単語感情極性対応表を利用して各単語のネガポジ値を求め、銘柄毎にその値の平均を求めました。結論から言ってしまうと、今回の方法では有効な結果…

mecabのインストール

四季報の文章をネガポジ分析で評価して、株価のパフォーマンスを調べてみたいなあと、その手順についてまとめておきます。 WEBスクレイピングで取得してきた四季報のデータを、「MeCab」で形態素解析して、「単語感情極性対応表」という辞書で文章内の単語の…

四季報を使って株価を分析してみる(1)

四季報のデータを用いて簡単な分析をしてみます。 2016年秋号の四季報で「最高益」という文字列が含まれている銘柄は285件ありました。これらの銘柄のパフォーマンスに何かしら傾向があるかざっくりと調べてみます。 四季報発売日は9/16(金)でしたので、…

Elasticsearchにcsvファイルをインポートする

Elasticsearchにはどうやってデータ入れるのが良いのか、調べていたらEmbulkというものがあるらしいです。流行っているらしく、これを利用してデータを投入します。 Embulkについてまとめ。 Fluentdのバッチ版Embulk(エンバルク)のまとめ - Qiita Elasticsea…

Elasticsearchのマッピング

実際に取得した四季報データを投入するにあたり、Elasticsearch側で必要な設定をしていきます。 まずElasticsearchですが、以下のような仕組みとなっているそうです。 RDB: Databases => Tables => Rows => Columns Elasticsearch: Indices => Types => Docu…

ElasticsearchのAnalyzerについて

実際にデータを投入し検索できる環境を整える前に、ElasticsearchのAnalyzerに関してもメモを残しておきます。 ElasticsearchのAnalyzerに関する部分は、なかなか難解でした。Elasticsearchには「Character Filter」と「Tokenizer」と「Token Filter」の3つ…

Elasticsearchのpluginの追加

Elasticsearchではplugin(追加モジュール)が多数公開されています。結構あるので、何を入れれば良いんだとなりますが、Elasticsearchの中の人が紹介してくれていました。 いつも入れているElasticsearchのプラグイン - @johtaniの日記 2nd 参考に以下を入れ…

Elasticsearchの初期システム設定

Elasticsearchを運用する上で、細かい初期システムパラメータについてもメモしておきます。CentOS7でElasticsearchのバージョンは2.4.1です。 基本的にマニュアル通りです。 Configuration | Elasticsearch Reference [2.4] | Elastic ES_HEAP_SIZE Javaで利…

Elasticsearchのインストール

取得した四季報データを全文検索するため、Elasticsearchを構成しようと思います。 ElasticsearchのSupportMatrixは以下です。今回構築する環境はCentOS7です。 Elastic Support Matrix · Elasticsearch | Elastic Elasticsearchの構築手順をメモしておきま…

並列でWEBスクレイピングする方法

四季報データをWEBスクレイピングするスクリプトを作成したのですが、取得に約1日かかった。。。 証券コードを1000から9999までの連番で1件ずつ総当りして、四季報の情報あれば取得する処理を書いているのですが、 直列で実行して、1件あたり10秒くらい…

PyQuery を使ってみる

前回の続き。 PhantomJS + selenium を使ってみる - goodbyegangsterのブログ 取得したhtmlソースを解析する方法として、PyQueryかBeautifulSoupを利用する方法があるようです。ネット上でのコメントを読む限り、どっち使っても結局変わらないよ。ただし、Py…

PhantomJS + selenium を使ってみる

四季報の文章を検索できたり、ネガポジ分析できたりしたら便利だなと思い、 おそらく四季報CD-ROMや有料版四季報オンラインであれば可能なのでしょうが、 そのためだけにお金払うの嫌だし、 証券会社に口座を作ると無料で四季報を見られるのを利用して、 自…

pyenv + virtualenv を使ってみる

Pythonでちょっとした処理を書いてみようと思い、 CentOSに標準で入っているPythonを調べたところ、バージョンは「2.7.5」でした。 (CentOSのバージョンは7.2.1511) せっかくなので3系を使ってみたいなと、 バージョンアップの方法を調べていたら、「pyenv…