hatunina’s blog

メモと日記です

Macでspark-jobserverのサンプルを動かす&Tips

職場のWin10環境でハマりまくっているのでMacでサクッとやってみる。 基本的にレポジトリ周辺にまとめられているドキュメントを参照しただけです。 まずレポジトリをクローン github.com docker docker run -d -p 8090:8090 sparkjobserver/spark-jobserver:…

Windows10でdocker-compose upがコケた時の対処法

メモです。 Win10環境でdocker-compose upすると下記エラー Error response from daemon: Cannot restart container xxxxx: driver failed programming external connectivity on endpoint xxxxx Win10の高速スタートアップ機能の「完全シャットダウン」とや…

「前処理大全」を読みました

読みました。 gihyo.jp ドッグイヤーしまくりました。 最近はデータ分析やらダッシュボード・プロトタイプ作成が主な業務になっているので、こういうデータ欲しいんだけどどう書くのが効率的かな〜って時に逆引きしてます。 特にSQLはちょっと苦手なので、目…

KFoldでクロスバリデーション

メモです。 サンプル とりあえずndarrayを定義 import numpy as np X = np.array([[1, 2], [3, 4], [5, 6], [7, 8]]) y = np.array([1, 2, 3, 4]) print(X) print('=========') print(y) # [[1 2] # [3 4] # [5 6] # [7 8]] # ========= # [1 2 3 4] n_split…

pd.factorizeでカテゴリ変数を数値に変換する

カテゴリ変数をユニークな数値に変換してくるやつです(ダミー変数ではない)。 pd.factorize まず、こんなデータフレームがあったとします。 import pandas as pd df = pd.DataFrame({'列1': ['b', 'b', 'a', 'c', 'b'], '列2': ['あ', 'い', 'い', None,…

macにLightGBMをインストールする

pipしただけではエラーが出たのでメモです。 エラーとか pipしてimportしようとするとimage not foundと出てしまう。 調べたところ、ソースからビルドした方が良さそう?とのことで下記ドキュメントを参照し進めて行きました。 github.com すると、cmake ..…

btcbot開発日記1

日記です。 作ったやつ 最近1ヶ月でいろんなことを試したけれど、結局チャネルブレイクアウトに落ち着きました。 シンプルなので超てきとーに書いてもあんまりごちゃごちゃせずにメンテしやすい! github.com ロジック的な話 バックテストはまだ作っていな…

Python2.7とPython3.5の組み込み関数lowerの話

たぶん超絶ニッチ でも気になったから覚えているうちにまとめます。 なんならちゃんと解決してないので誰か教えてください。 状況 lower関数ですが、対象となる文字列を小文字に変換してくれるやつです。 まずはPython2.7での挙動を確認します。 # ABは半角 …

Python2.7からPython3.5へ移行した

まだ完全に移行完了した訳ではないけど覚えているうちにまとめておく 理由 システム自体はPython2.7で動いているんだけど、新しくNeuroNERというライブラリを使うことになり、これ3.x系じゃないと動かないやんけ!ってなったからです。 やったこと ざっくり…

「シス管系女子3」を読みました

読みました system-admin-girl.com 技術書典のサークル眺めてたら、「3」あるんかい!ってなって買いました。 買った時に作者さんに一言お礼を言いたかったけど、めちゃくちゃ人がいたので躊躇してしまった。ざんねん ネットワークやセキュリティのお話がメ…

pd.Seriesに辞書を渡すとキーで昇順にソートされる

例 Seriesを作る際にindexを指定した場合、指定したindexはリストなので順番を持っています。 なので、リストの順番でSeriesが作られます。 hoge = pd.Series([1, 2, 3, 4, 5], index=['C','A','B','E','D']) print(hoge) # 実行結果 C 1 A 2 B 3 E 4 D 5 dt…

pandasのSettingWithCopyWarningの対処法

事象 こんな感じのデータフレームがあった時 import pandas as pd df = pd.DataFrame({'A': ['a', 'b', 'c', 'd', 'e'], 'B': [1, 1, 1, 2, 2]}) print(df) # 実行結果 A B 0 a 1 1 b 1 2 c 1 3 d 2 4 e 2 列Bが1のとこだけ抽出して新しい列を追加したいな〜…

技術書典4に行きました

行きました。 techbookfest.org 買ったやつ 買った!こういうイベント超好きです。#技術書典 pic.twitter.com/1Rgr8Qtsh8— hatunina24 (@hatunina) 2018年4月22日 シス管系女子があったので買ってしまった。このシリーズ好きすぎだろわろす あとはkaggleとDj…

kaggleの「Bitcoin Historical Data」のカーネルを読むその3

これ Predicting BTC Price Using RNN | Kaggle 概要 LSTMで日足を学習・予測させています。 ライブラリはkerasです。 Qiitaとかでもよく見るやつ タメになったやつ コードこれだけで学習できちゃうんすね。。。 from keras.models import Sequential from k…

kaggleの「Bitcoin Historical Data」のカーネルを読むその2

今日はこちら Bitcoin Price. Prediction by ARIMA | Kaggle 概要 自己回帰和分移動平均モデル(ARIMAモデル)とやら。 うーむ、事前知識なさすぎて、ちょっと専門的になるとわからん 時系列データ分析に関する本も並行して読まねば statsmodelsというライブ…

kaggleの「Bitcoin Historical Data」のカーネルを読むその1

カーネルを上から順番に読んだものをまとめていきます。 その1としましたが、続くかはわかりません。 概要 Bitcoin Historical Data | Kaggle コンペとして開かれているわけでなく、学生さんがデータセットを公開していて、みんなテキトーに遊んでねって感…

「ベイズ推定入門」を読みました

読みました。 shop.ohmsha.co.jp 完全に息抜きです。 余裕のあるうちにちょっとでも語彙力を増やす。 以下目次です。 第1章 こんなところにベイズ推定 第2章 確率分布とベイズ推定 第3章 機械学習とベイズ推定 第4章 不可能を可能にするベイズ推定 第5章 カ…

bitflyerから日付を指定して約定履歴を取得するスクリプトを改良しました

これの続きです。 hatunina.hatenablog.com 追加したところ ・データ取得開始日だけでなく取得終了日(時間)まで指定できるようになりました。 ・取得したデータを1分足、1時間足、日足のHLOC(高値、安値、始値、終値) + 出来高に変換できるようになりま…

NLTKでIOBタグ付けと頻出単語描画とストップワード除去とシノニムを探す

色々試しました。 Tokenize ~ Pos tagging ~ chunking ~ IOB tagging いじくる文章はiPhoneのwikiを使います。 import nltk sent = """iPhone is a line of smartphones designed and marketed by Apple Inc. The iPhone line of products use Apple's iOS m…

「パーフェクトPython」を読みました

読みました。 gihyo.jp めちゃくちゃ良かった。 最近読んだ中で一番良かった。 やはり良書と呼ばれるものはハズレがない Python以外の言語経験がある方ならこれ一冊で十分 「みんなのPython」→「パーフェクトPython」の順番でもいいかもしれない。 初めての…

bitflyerから日付を指定して約定履歴を取得するスクリプトを作りました

作りました。 github.com この方とめっちゃ被ってるけど俺氏3月末から着手してたから。。ユルシテ。。。。 sshuhei.com 経緯 botは去年の6月ぐらいにコインチェックのAPIで作っていました。Javaで! 当時はJavaしか使えなかったのでラッパーが公開されてい…

pandasのset_valueを.at[]に書き換える

大量のset_valueを書き換える雑務が降ってきたのでついでにまとめる とりあえず例 import pandas as pd import numpy as np from numpy.random import seed seed(1) df = pd.DataFrame(np.random.randn(5, 4), columns=list('ABCD')) print(df.head()) 実行…

「プログラマの数学」を読みました

これです。 www.hyuki.com 紀伊国屋でやっている数学フェアで見かけたので買いました。 サッと読むつもりがクイズ多めで意外と時間がかかってしまった。 個人的には数学ガールぐらいの問題量というか一つをじっくり考える方が好きです。

「シス管系女子2」を読みました

読みました。 system-admin-girl.com 1に続いて2も読みました。 cronから公開鍵に始まりシェルスクリプトの実用的なお話等々 シェルを書く機会は今のところ皆無ですが、ミーティングや日常会話で話題になった際にちょっと何を話しているのかイメージできる…

crfsuiteとpycrfsuiteについて

CRFについて勉強中です。 色々調べつつサンプルを動かして見ました。 こちらはコマンドラインで実行できるcrfsuiteのチュートリアル記事です。 CRFsuite - Tutorial on Chunking Task - 英語ですが、難しい単語は出てこないですしざっくり大まかな概要は把握…

高階関数とlambda式

パーフェクトPython 130Pあたりの内容です。 高階関数とは、関数を引数としてとったり戻り値として返す関数を指します。 例えば、こんな感じ。 def spam(): print('spam!') def ham(arg): print('ham!') arg() def egg(): print('egg!') return spam spam() …

「シス管系女子1」を読みました

system-admin-girl.com 最近、よく数百万行のtsvファイルをbashで見たり加工したりすることがよくあります。 毎回、やりたいことをググって一度使ったものは手元にまとめたりしているのですが、いまいち身についた感覚がしませんでした。 シェルスクリプトに…

Pythonのconfigparserで設定ファイルを読み込む

mainのプロセスで初期化する内容が多くなって来た時には設定ファイルを作成して読み込むのが良い。 例えば、こんな感じのmain.pyがあったとします。 #!/usr/bin/env python # -*- coding: utf-8 -*- class Main(object): def __init__(self): self.data_dir=…

Aidemyやってみた

Aidemy、良いよというお話です、 現在、無料公開中とのことで下記三つのコースをやってみました。 ・Pandasを用いたデータ処理 ・データクレンジング ・自然言語処理 僕は書籍を読んでも写経というのが苦手で、せっかく読んだ知識が右から左へ流れがちになっ…

「みんなのPython 第4版」を読みました

読みました。 僕は元々、Javaを使ってWeb系の仕事をしているのでPythonのみを学ぶ目的で読んだ本はこれが初めてになります。 業務で本格的にPythonを使うことになりWebや動画サービスの断片的な知識だけではどうにもならなくなったため、とりあえず大雑把にJ…