pandazx's blog

データ分析など雑多な技術ブログ

Rのggplotでヒートマップ作成時にログスケールとlimitsかけてエラー

R

例えば、以下のようにヒートマップを作成してエラーになったとする。 library(ggplot2) library(reshape2) library(ggthemes) # data.csv には val1, val2, valueというカラムがある data<-read.table("data.csv", header=T, sep=",") # ヒートマップ作成 p …

Hadoopの新ストレージKuduのβ版リリース

HadoopにはHDFS(ファイルシステム)やHBase(列指向DB)といった ストレージシステムがありますが、両者を補完する位置づけであるという 新しいストレージシステムKudu(クドゥ)がリリースされました(β版) Kudu (クドゥ) : HDFSとHBaseを補完する、Hadoo…

JSONファイルを1行で読込む

data = JSON.parse(File.read(filepath)) # または File.open(filepath){|io| JSON.load(io) }

rubyで別ディレクトリのscriptをrequire

作ったスクリプトが増えてくると、昔、作ったスクリプトを使いまわしたいことがあると思います。 ただ、そのスクリプトAが同ディレクトリの別のスクリプトBをrequireしていると、他のディレクトリからスクリプトAをrequireすると パスが違うのでエラーになり…

ダックタイピングとstructural subtyping

プログラミング言語の解説で、ダックタイピングという用語がわからなかったので調べた。これは動的言語において、アヒルのように歩き、同じ鳴き声をするなら、そのオブジェクトはアヒルと同じように扱えるってことらしい(ポリモーフィズム的な感じ)Rubyのサ…

AWS SDK for Ruby(V2)ですべてのS3オブジェクト一覧取得

以下のようにすると、1000個しか取得できない。 s3 = Aws::S3::Client.new response = s3.list_objects(bucket: bucket_name) response.contents.each do |object| puts object.key end これはAWS SDKの制限で一度に1000個しか取れないようになっているから…

Amazon LinuxにPython3とNumpyインストール

Amazon Linux でEC2を作ったら、Python2.7だった。 Python3系とNumpyを使いたかったのでインストールした話。 2015.6.5 追記 もっと簡単な方法があった。Python3はソースからインストール。 pip install numpy で行けた。以下はPython2だが参考になる。 Amaz…

第2回GCPUG in Tokyoメモ

GCP

第二回GCPUG in Tokyo! : ATND Google Cloud Platformユーザ会の勉強会に行って来たが、何故か発表者4人中3人がGoogleの人だったので、ユーザ会じゃなくて、Googleの宣伝活動の場みたいになってた。これから各地に支部が立ち上がる予定らしい。盛り上がる前…

sendmailコマンドで複数人にメール送信

カンマ区切りでスペースを入れずに宛先に以下のように書けばよい。 $sendmail to@test.com,to2@test.com To: to@test.com,to2@test.com From: from@test.com Subject: test test mail desu. .To: のところだけ複数個書いてもダメで、最初のsendmail でも同様…

第1回Vertica勉強会メモ

勉強会ページ第1回 Vertica 勉強会 : ATND非公式ハッシュタグは#vertica_meetup◼︎20分でわかるVertica概要紹介のみ◼︎DeNAアナリスト業務データ発生からVerticaに入るまでの時間は?1時間以下程度。遅くて2-3時間。おそらく、前者がkafka経由、後者がHadoop…

EC2にsshログインできない。タイムアウトする

aws

ネットワーク初心者がハマりやすいかもしれない。作業の流れ VPC作成 サブネット作成 EC2インスタンス作成 セキュリティグループに自分のIPアドレスからのSSHアクセスのみ許可(My IP) これで意気揚々とsshアクセスするとユーザ認証画面すら出ずにタイムア…

out of core とは

実メモリに納まらないデータがある場合に、外部記憶装置から適宜、読み出して処理すること参考http://www.nakl.t.u-tokyo.ac.jp/~masuda/papers/pnt07Symp.pdf

Kernel Panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

yum updateなど全体のアップデートを行った後に再起動すると タイトルのようなKernel Panicが起きることがある。 原因調査 GRUBメニューで昔のカーネルを選択して起動する。 次に、df で /boot が100%スペースを使い切ってないか確認する。 /boot の空きスペ…

C#でzipファイルの16進数文字列をバイナリにして出力

C#

zipファイルのバイナリをテキストダンプした後で 解凍して中身を取り出したい場合のサンプルコード。 以下の例では結果をD:\test.zip として出力する。 using System; using System.Collections.Generic; using System.Linq; using System.Text; using Syste…

C#でzipファイル解凍

C#

src.zipを解凍して、C:\dstフォルダに出力するサンプル。コンソールアプリケーションのプロジェクトを作成して以下を記述 using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading…

iPhoneアプリのTableView表示でエラー「unrecognized selector sent to instance」

Swiftでテストアプリ開発している時に遭遇。設定が間違っていると以下のようなエラーが出る。 2014-11-13 01:28:13.470 iOSApp[7885:126131] -[UIView tableView:numberOfRowsInSection:]: unrecognized selector sent to instance 0x7fa282d76590 2014-11-1…

iPhoneアプリでLabelに文字が表示されない

ios

文字列の最初に改行(\n)が入っていると何も表示されないXMLをパースしたテスト的な文字列が 「\n商品A\n商品B」のような文字列になっていて、 これをラベルのテキストに入れて表示しようとしたら 表示されなくて小一時間悩んだという話。。。

Swiftで現在地の緯度経度と住所を取得

目的 Swiftとiphoneアプリ開発の練習がてら、現在地の緯度経度の取得とその住所を表示するアプリを作成 手順 1. XcodeでSingleViewApplicationのProjectを作成2. Build PhasesからLink Binary With Librariesをクリック、CoreLocation.frameworkを追加 参考…

Xcodeのウォッチ

ios

IDEによくあるウォッチをXcodeでやる方法変数の値が表示されるウィンドウで右クリックしてAdd Expressionで出来る変数を指定、右クリック、ウォッチに追加みたいなことは出来ないっぽい

XcodeでGitHub連携したプロジェクト専用ローカルリポジトリ作成

あとから追記: 以下の手順で出来たのはいいが、後で.git repositoryが見つからないエラーで、commitできなくなった。めんどくさいので、コマンドラインからgitを使うことにした。 一応、Xcodeのcommitを使えば、diffがグラフィカルに表示できるので、使うと…

getter,setter問題

この記事を読んだ感想getter/setterとはなんだったのか - プログラマーの脳みそ昔、何も考えずにgetter,setterを作るのはかなり違和感があったな。使う予定もないのに、とりあえずクラスの書き始めに儀式のように書くgetter,setter。ただ、末尾で紹介されて…

D3.jsで先頭に要素追加

例えば、 <div id='id'> <div>a</div> <div>b</div> <div>c</div> </div> # この時に一番上に追加 d3.select('#id').insert("h1", ':first-child').text("テキスト"); # 以下のようになる <div id='id'> <div>テキスト</div> <div>a</div> <div>b</div> <div>c</div> </div>first-childを指定しなければ、末尾に追加。 ちなみにinsertではなく、appendを使うと末尾に追加される。

jQueryとD3でインデックスつきのループ処理

あるdivタグに全体を太字にして、各要素のテキストは色を変える場合 jQueryとD3を使って、以下のように書ける。 var elem = d3.select("id").append('b'); $.each(labels, function(i,label){ elem.append("font").text(label + " ").attr("color", colors[i…

アプリ用11色カラーチャート

CMYKカラーチャート24色相環 | 色カラー上記サイトを参考に11色にして見分けがつきそうな色をピックアップしてみた。 グレー(無効値)→濃青(値小さい)→緑→黄色→赤(値大きい)に向かうイメージ gray #1D2088 #0068B7 #00A0E9 #009E96 #009944 #8FC31F #FF…

Gunosyデータマイニング研究会#77に行ってきた

Gunosyデータマイニング研究会 #77 - connpass主催はGunosyのyoshifumi_sekiさん 資料は上のURL先を参照ずっと社内限定の研究会を実施してきたが、最近は社外に公開している。 隔週で実施。当日の流れ データ解析のための統計データモデリング入門 第6.1~6.…

verticaでtimestampを年月日にフォーマットして取得

以下のようにすると、timestampのカラムを日時にフォーマットして取得できる select date_trunc('day', timestmap_column) as date from table_name;その他の引数は以下を参照 HP Vertica Analytics Platform 5.1.x Documentation

Matlabでライブラリパスの設定

別フォルダにあるMatlabプログラムの関数を実行したい場合、以下のようにパスを追加すればよい。 path(path, '追加パス')現在のパス設定はpath と打てば確認できる。

GitHubでコミットログのユーザがおかしい

git

GitHubにはメールアドレスhoge@example.comで登録したユーザを使っているとする。 サーバ上でhogeユーザでコミットしたのにGitHub上のコミットログ一覧ではhogeユーザの名前は表示されるが、リンクにならないことがある。ユーザアイコンも表示されない。これ…

Rでファイルパスからファイル名を取得

R

統計Rでのファイル操作ファイルパスからファイル名を取得 input = "dir/file.csv" basename(input) [1] "file.csv"拡張子を除外したい場合 substr(basename(input), 1, nchar(basename(input)) - 4) [1] "file"

RのRandom Forestの結果を毎回同じにする

R

Random Forestはその名の通りランダムに処理するので結果が毎回変わる。 これを毎回、同じにするためには set.seed(1) とすればよい。 指定する値は何でもよい。