tetsunosukeのnotebook

tetsunosukeのメモです

システムから来るメールなどを迷惑メールにしない(GoogleAppsScript)

GAS

昨日GASのハンズオンセミナーを開催した時に参加者の方と少しお話をして、どんなスクリプトを社内で動かしているか?みたいな例として、下記のようなスクリプトを紹介しました。まあ社内でっていうか、完全に俺得として作ったものなんだけど。 AppsScriptの…

if(hoge) の危険性

PHP

if (DEV) ↘ DEVをdefineしてなかった! ↙ DEV=string(3) 'DEV' ↘ if ('DEV') -> true ↙ _人人人人人人人人人人人人人人人_ > defineしないとDEVってことに <  ̄^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄

Google Apps ユーザーフォーラムでSidebarガジェットの発表をしてきました(後編)

続編だよ! 続編では、jQueryのプラグインであるquicksearchをご紹介します。前回作ったプログラムを動作させると、下記のHTMLを実行したのと似たような状態になります(※ pはやめてul/liを使いました) <html> <head> <meta http-equiv="Content-type" content="text/html;charset=utf-8"> </head> <body> <ul id="result"> <li>苗字=ito,名前=hirobumi,番号=1</li> <li>苗字=kuroda,名</li></ul></body></html>…

Google Apps ユーザーフォーラムでSidebarガジェットの発表をしてきました(前編)

Google Apps ユーザーフォーラムへ行ってきたよ 会社の人事総務部で導入しているGoogleAppsのユーザフォーラムが開催(主催:株式会社電算システム様)されたので、ちょっとお手伝いに行ってきてついでに(?)発表してきました。弊社では、社員の内線番号を…

数値の割り算でハマる

「PHPとPostgreSQLに投げてfloorを計算させたら結果が違うんですっ!」とか言われてちょっと何言ってるかわからない状態になった。どうもこういうことらしい。int(に見えるリテラル)をintで割ったときの挙動の問題のようだ。PHPの floor(-155/10)の結果 $ …

(メモ) jsTestDriver で HtmlDocを使う

jsTestDriverではテストコードの中にHTMLのDOM要素へアクセスできるらしいので、やってみた。下記のように書く。 TestCase("domTest", { setUp: function() { }, tearDown: function() { }, "test inner div document": function() { /*:DOC div = <div><p id="foo">bar</p></div>*/ tag…

ファイルからメソッドを抜き出して分割しまくってやるぜ

php

複数のファイルに全く同じメソッドを発見してしまいキレたの巻。メソッドごとに切り出してそれが同じものであればコピペしやがったなこのやろうしけいだ!ってできるかな、と思った。まあ昨日の流れでphpcpdとかでチェックする話なのだろうけど、いざチェッ…

phpcpd だとCopy Paste Detectをあまりしてくれない件、でjenkinsで困った。

php

phpcpdとpmd とりあえずコピペした下記のような2つのクソコードを作ってみる。 Dollar.php prefix = "$"; $this->value = $value; } public function __toString() { return $this->prefix . $this->value; } } Yen.php

分散分析を行う

R

下記のような表があったとき(はてな記法でcolspanのやつとかできないのね!めんどくさい!) 要因1,要因2の影響について調べる。 要因1 要因2ABCD a34415256 b35465562 c40535663 このデータ、その形のままだとRに取り込みにくいのでこんな形の単純な…

等分散でないときのt検定(ウェルチのt検定)

R

同様に、下記のようなデータに対して分析をしてみます。 > a [1] 8.81 8.35 8.62 9.11 8.38 9.15 9.22 8.20 9.38 7.57 > b [1] 8.27 8.05 8.32 8.08 8.95 8.22 7.81 8.43 8.21 8.17 まずはF検定 > var.test(a, b) F test to compare two variances data: a a…

標本の少ないデータ間で、F検定→t検定。

R

z検定が実施可能であるデータと比較して、データの数量が少ない場合には、F検定で等分散かどうかを調べ、その後t検定にて平均の差異を調べる。 等分散であるかをF検定で調べる 下記のようなサンプルデータに対し > a [1] 8.81 8.35 8.62 9.11 8.38 9.15 9.22…

Seleniumで画面の中の嫁に挨拶返し

なんか知らんがおもむろに嫁がFacebookで挨拶してくる。返しても返してもしてくるので、対応スクリプトを書いたでござる # -*- coding: utf-8 -*- from selenium import webdriver email = "メールアドレス" password = "パスワード" br = webdriver.Chrome(…

RのpnormとExcelのNORMDISTとz検定

R

ExcelのNORMDISTは、NORMDIST(値, 平均, 標準偏差)のように使うことで、ある値(x)が正規分布(平均, 標準偏差)(これをP(μ, σ)と表す)で表される確率密度関数において、マイナス無限大からのxの定積分値を求めることができる。つまり、xが平均値μに等し…

これから始めるPHPerのJenkinsでCIやってみよう に参加してきた

php

id:officel(@raki) 主催の これから始めるPHPerのJenkinsでCIやってみよう(DevHub西新宿) #DevHub0128 に参加してきました。共催というか。まあ今回は会場提供だけ、の予定だったのですが、前日にちょっと予習をしようと思って、というかうちの会社のメン…

2011年振り返り

2011年は、アウトプットの年、だった気がする。仕事上の目標設定が、アウトプット重視に評価項目がうつったから、というのもあるような気がするが、結果的に、「目を引くこと」に重点をおいたものが多かった。それが良いことかどうかはともかくとして。…

Rで主成分分析

R

おそらく今年最後のR入門記録記事です。今回は下記のような五教科の点数を個人ごとに記録したデータを使います。 (実際のデータ量はもっと多いです) > csv kokugo syakai suugaku rika eigo 1 35 24 4 10 43 2 39 74 30 43 61 3 70 94 33 33 85 4 49 42 33…

Rのformulaって不思議だなって

R

回帰分析とかいろいろやっていく中で便利だなーって思ったのが > csv month degree amount 1 1月 5.1 772 2 2月 6.7 948 3 3月 9.8 1251 4 4月 13.6 1211 5 5月 19.0 1287 6 6月 22.5 1653 7 7月 25.6 1559 8 8月 27.5 2389 9 9月 23.5 1189 10 10月 19.5 11…

Windowsでpydoc

完全自分用メモ作ったファイルのドキュメントみたいと思ったのですがWindowsだとPydocってコマンドではないので...Python2.7の場合、以下、インストールフォルダがc:\Python27だった場合で、メソッドlenを調べたいときは下記のように実行 C:>python c:\Pytho…

マハラノビスの距離で判別分析

R

今回は、あらかじめ合否のデータリストがある状態で、新たなデータを入れたときにそのデータの合否がそれぞれの要因によってどう分類されるか?を調べます。そのための変数は、比重、色素の二種類をもつデータです。 > data = read.csv("7-1.csv") > data hi…

(覚書) Sphinx で make pdf するとget_language() takes exactly 2 arguments (1 given) な件

Sphinx のマニュアル(rst2pdf)にそってPDFをつくろうとしたがハマったので覚書。 writing MyProject... [ERROR] pdfbuilder.py:129 get_language() takes exactly 2 arguments (1 given) Traceback (most recent call last): File "C:\Python27\lib\site-p…

Rでクラスター分析

R

テキストに沿って行くと重回帰分析の話なのですが、R的にはネタにならないので、別のことを。Rでクラスター分析をしてみました。データは、セ・リーグの球団で好きな順、という想定にしてみました。まず、以下のようなCSVファイルを読みます。 中日,ヤクルト…

手作業かコーディングか?ブラックな職場からの一言

http://togetter.com/li/207810 が、ちょうどいいタイミングで流れてきたので一考。正直なところ「12時間も書かなきゃいけないプログラムで何かを改善する」ってのは結構やばい。これが、書くのは一時間、だったりしたら・・・十分やりがいがあるが。さて…

Rで重回帰分析

R

今日は、見た目にわかりにくいけど...下記のようなデータで重回帰分析を行います。 なお、a=駅からのバス時間、b=駅、バス停徒歩時間、c=築後年数、d=建物延べ面積, e=土地面積, f=価格を表しています。これらa〜eの要因によって、価格がどのくらいになるの…

ロジスティック曲線へのあてはめ

R

下記のようなデータがあったときに、このデータの成長がどこで頭打ちになるかを調べる。 x 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 y 2.9 5.2 9.1 15.5 25 37.8 52.6 66.9 78.6 87 92.4 95.7 97.6 98.6 99.2 x <- 1:15 y <- c(2.9, 5.2, 9.1, 15.5, 25, 37.8, …

Linuxで文字列長を求めよう

そういやPythonでワンライナー実行したことなかったと思い、コマンドラインオプションを調べる。-cらしい。 $ python -c 'print len("123456789")' 9普通にシェルから文字列長を求めるためにはこうするのがいいらしい。 $ i='123456789' $ echo ${#i} 9備忘…

Rで近似曲線(直線ではない曲線)

R

Rで回帰分析のため、回帰直線ではなく、近似曲線を求めてみます。今回使うのは以下のようなデータ。 No,データ 1,121696 2,122012 3,122469 4,123033 5,123756 6,124454 7,125019 (略) 46,125983 47,126249 48,126643 49,127263 50,127816このデータをモデ…

Rで移動平均(移動平均の遅れを解消)

R

データセットに読み込んだデータに対し、下記のようにして移動平均の遅れを解消したグラフを描画することが出来ました。一度配列として読み込んだデータをスライスして、不要な部分にNAを代入することで、グラフの対応関係も適切になります。 y1 <- Dataset[…

Rで移動平均

R

Rで移動平均をやってみます。 Rで移動平均を求めるには、自前で計算をしろ、というのが検索すると出てくるのですが、もうちょっとよく調べたら、パッケージがあるようなので、それをそのまま利用します。そもそも移動平均は、SMA(Simple moving average)と…

CSVで読み込んだデータのラベルを変更する

R

軽すぎるネタですがメモ的に。2カラムのデータを、data = read.csv("filename") で読み込んだ場合、先頭の行がデフォルトでラベルになる。このラベルを変更するには以下のようにすれば良い。 > colnames(data) <- c("first", "second")もちろん、2列目のみを…

Rで回帰分析

R

引き続きデータマイニングの基礎の学習です。Rで、回帰分析を行います。 ファイルの読み込み 回帰分析以前に、まずは対象とするデータをCSVファイルから読み込みます。Rはメニューからもワーキングディレクトリを設定できますがプログラム側からも指定ができ…