goodbyegangsterのブログ

備忘録的な

Elasticserach 5.2.1 で elasticsearch-head を利用する

前回のアップグレード時、elasticsearch-headを利用する方法を記載しなかったので、記載しておきます。 Elasticsearchのバージョンアップ - goodbyegangsterのブログ Elasticsearch 5.X よりsite plugin は利用不可になりました。詳しくは過去の公式ページに…

Elasticsearchのバージョンアップ

ElasticSearchがいつの間にやらメジャーバージョンアップしているので、僕の環境のもバージョンアップしてみます。(2から5にバージョンアップしていますが、3と4はどこへ。。。) (→ 2017/04/10追記:コメントで教えてくれた方がいました!!Kibanaとバ…

Elasticsearchのバックアップ

ElasticSearchではインデックスのバックアップ方法として、snapshotの機能を提供しています。今回その機能を利用したので、備忘録しておきます。 環境です。尚、ざっと確認した限り、バージョン5のElasticSearchでも手順は同じっぽいです。 CentOS 7.2 Elas…

D3.jsでローソク足チャートを描く

株価のローソク足チャートを描いてみます。これを描いてみたかったので、D3.js触ってみたんですよね。D3.jsには「TechanJS」というファイナンス用のライブラリが存在しており、これを利用することで簡単にチャートを作成できます。 TechanJSのギャラリー。い…

RailsでD3.jsを使う

D3.jsはいろんなグラフを描けるJavaScriptのライブラリですね。柔軟性は高いけど、その分学習コストも高いとの噂。描画できるグラフサンプルはこちら。 Gallery · d3/d3 Wiki · GitHub これをRails環境で利用してみます。環境です。 Rails 5.0.1 D3.js 4.4.1…

Railsで既存のデータベース(MariDB)を利用する

PHPで作成していたシステムをRailsに置き換えようと色々調べているのですが、移行にあたって最大の問題は「既存のデータベースをRailsでどのように利用するか」ですね。RailsではCoC(Convention over Configuration:設定より規約)の精神が貫かれており、そ…

RailsでSQLiteでなくMariadbを利用する

RailsでSQLite以外のDBを利用する方法です。今更の内容ですが、備忘録として。Railsのバージョンは「5.0.1」です。 デフォルトではSQLiteを利用する設定になっているので、まずGemfileを更新します。sqlliteの部分をコメントアウトして、MySQL(MariaDB)のラ…

WindowsからCentOSへ、MySQLをMariaDBに移行する

db

以下の環境間で、DBを移行したときのメモです。MariaDBデビューです。 [移行元] Windows7 Pro MySQL 5.6(InnoDB) [移行先] CentOS 7.2 MariaDB 10.1 MySQLからMariaDBへのアップグレードは、公式で手順が公開されていますが、異なるプラットフォーム間でとい…

SELinux有効時に、MariaDBの起動に失敗する件

db

MariaDB新規インストール時にはまったので、そのメモです。 環境です。 CentOS 7.2 MariaDB 10.1 以下の条件時に発生するようです。 SELinux有効時 データファイルのパスをデフォルトから変更している OS上のファイルアクセスのパーミッションは正しく与えて…

リモートのMySQLからデータをpandasに取ってくる

リモートサーバ上のMySQLからデータを引っ張ってきて、pandasで処理したかったのです。環境は以下です。 python 3.5.2 pandas 0.19.2 rdbからデータ取得するための関数が、pandasには用意されています。「pandas.read_sql_query」は、実行したSQL結果をデー…

firewalldについて最低限まとめておく

CentOS7になり、ネットワークまわりの設定がかなり変わりましたね。地味に困りますねえ。。。設定の都度ググっては忘れてを繰り返しているので、備忘録としてまとめておきます。 以下のサイトを参考にしていますので、詳しくはこちらを見たほうが良いと思い…

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…