<?xml version="1.0" encoding="utf-8" ?>


<?xml-stylesheet href="http://d.hatena.ne.jp/yokkuns/rssxsl" type="text/xsl" media="screen"?>


<rdf:RDF
xmlns="http://purl.org/rss/1.0/"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xml:lang="ja">
<channel rdf:about="http://d.hatena.ne.jp/yokkuns/rss">
<title>yokkunsの日記</title>
<link>http://d.hatena.ne.jp/yokkuns/</link>
<description>yokkunsの日記</description>

<dc:creator>yokkuns</dc:creator>
<dc:date>2013-05-01T08:24:34+09:00</dc:date>
<items>
<rdf:Seq>
<rdf:li rdf:resource="http://d.hatena.ne.jp/yokkuns/20130501/1367364273"/>
<rdf:li rdf:resource="http://d.hatena.ne.jp/yokkuns/20130330/1364649236"/>
<rdf:li rdf:resource="http://d.hatena.ne.jp/yokkuns/20130327/1364340792"/>
<rdf:li rdf:resource="http://d.hatena.ne.jp/yokkuns/20130108/1357602940"/>
<rdf:li rdf:resource="http://d.hatena.ne.jp/yokkuns/20121217/1355756912"/>
</rdf:Seq>
</items>
</channel>



<item rdf:about="http://d.hatena.ne.jp/yokkuns/20130501/1367364273">
<title>第30回TokyoRを開催しました</title>
<link>http://d.hatena.ne.jp/yokkuns/20130501/1367364273</link>
<description> 遅くなりましたが、4/20に第30回TokyoRを開催しました。 第30回R勉強会＠東京（#TokyoR） : ATND 内容に関しては、CodeIQさんのご協力でU-NOTEに素晴らしいまとめ記事を作成して頂いたので、そちらをご確認下さい。 【CodeIQ提供】データ解析・可視化なら俺らに任せろ！- 第</description>

<content:encoded><![CDATA[
<div class="section">
<p>遅くなりましたが、4/20に第30回TokyoRを開催しました。</p>

<ul>
<li> <a href="http://atnd.org/events/38512" target="_blank">第30回R勉強会＠東京（#TokyoR） : ATND</a></li>
</ul>
<br>

<p>内容に関しては、<a href="https://codeiq.jp/" target="_blank">CodeIQ</a>さんのご協力でU-NOTEに素晴らしいまとめ記事を作成して頂いたので、そちらをご確認下さい。</p>

<ul>
<li> <a href="http://u-note.me/note/47484756" target="_blank">【CodeIQ提供】データ解析・可視化なら俺らに任せろ！- 第30回R勉強会まとめ #TokyoR-ノート｜U-NOTE【ユーノート】-イベントまとめプラットフォーム</a></li>
</ul>
<br>

<p>次回は6/1に開催します。</p>
<p>興味のある方は是非ご参加下さい！</p>
<p> - <a href="http://atnd.org/events/38992" target="_blank">第31回R勉強会＠東京（#TokyoR） : ATND</a></p>
</div>
]]></content:encoded>
<dc:creator>yokkuns</dc:creator>
<dc:date>2013-05-01T08:24:33+09:00</dc:date>
</item>
<item rdf:about="http://d.hatena.ne.jp/yokkuns/20130330/1364649236">
<title>[R][CRAN]RでHDFS上のデータを読み書きするパッケージを公開しました</title>
<link>http://d.hatena.ne.jp/yokkuns/20130330/1364649236</link>
<description> RでHadoopを使うパッケージは、RHadoopとかRHIPEとかありますが、 単純にHDFS上のデータを読み書き出来るだけのシンプルなものが欲しかったのでパッケージを作って公開してみました。 http://crantastic.org/packages/rHadoopClient JavaとかPigで一次集計したデータをRで読</description>

<content:encoded><![CDATA[
<div class="section">
<p>RでHadoopを使うパッケージは、RHadoopとかRHIPEとかありますが、</p>
<p>単純にHDFS上のデータを読み書き出来るだけのシンプルなものが欲しかったのでパッケージを作って公開してみました。</p>

<ul>
<li> <a href="http://crantastic.org/packages/rHadoopClient" target="_blank">http://crantastic.org/packages/rHadoopClient</a></li>
</ul>
<p>JavaとかPigで一次集計したデータをRで読み込む時に使うイメージです。</p>
<br>

<h4> 準備</h4>
<pre class="syntax-highlight">
install.packages<span class="synSpecial">(</span><span class="synConstant">&#34;rHadoopClient&#34;</span><span class="synSpecial">)</span>
library<span class="synSpecial">(</span>rHadoopClient<span class="synSpecial">)</span>
</pre>

<br>

<h4> HDFS上のデータを読み込む</h4>
<p>./tmp/iris にアップしたirisのデータを読み込む</p>
<pre class="syntax-highlight">
data.hdfs <span class="synStatement">&#60;-</span> read.hdfs<span class="synSpecial">(</span><span class="synConstant">&#34;tmp/iris&#34;</span><span class="synSpecial">)</span>
names<span class="synSpecial">(</span>data.hdfs<span class="synSpecial">)</span> <span class="synStatement">&#60;-</span> names<span class="synSpecial">(</span>iris<span class="synSpecial">)</span>
head<span class="synSpecial">(</span>data.hdfs<span class="synSpecial">)</span>
</pre>

<pre>
##   Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1          5.1         3.5          1.4         0.2  setosa
## 2          4.9         3.0          1.4         0.2  setosa
## 3          4.7         3.2          1.3         0.2  setosa
## 4          4.6         3.1          1.5         0.2  setosa
## 5          5.0         3.6          1.4         0.2  setosa
## 6          5.4         3.9          1.7         0.4  setosa
</pre>

<h4> HDFSにデータを書き出す</h4>
<p>./tmp/output_irisにデータを書き出す</p>
<pre class="syntax-highlight">
write.hdfs<span class="synSpecial">(</span>iris<span class="synSpecial">,</span> <span class="synConstant">&#34;tmp/output_iris&#34;</span><span class="synSpecial">)</span>
</pre>

<br>

<pre>
$ hadoop fs -cat ./tmp/output_iris | head

5.13.51.40.2setosa
4.931.40.2setosa
4.73.21.30.2setosa
4.63.11.50.2setosa
53.61.40.2setosa
5.43.91.70.4setosa
4.63.41.40.3setosa
53.41.50.2setosa
4.42.91.40.2setosa
4.93.11.50.1setosa

</pre>

<h4> Hiveを実行して、その結果を読み込む</h4>
<p>irisのデータが入っているiris_tableからのデータ読み込み</p>
<pre class="syntax-highlight">
data.hive <span class="synStatement">&#60;-</span> read.hive<span class="synSpecial">(</span><span class="synConstant">&#34;select * from iris_table&#34;</span><span class="synSpecial">)</span>
names<span class="synSpecial">(</span>data.hive<span class="synSpecial">)</span> <span class="synStatement">&#60;-</span> names<span class="synSpecial">(</span>iris<span class="synSpecial">)</span>
head<span class="synSpecial">(</span>data.hive<span class="synSpecial">)</span>
</pre>

<pre>
##   Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1          5.1         3.5          1.4         0.2  setosa
## 2          4.9         3.0          1.4         0.2  setosa
## 3          4.7         3.2          1.3         0.2  setosa
## 4          4.6         3.1          1.5         0.2  setosa
## 5          5.0         3.6          1.4         0.2  setosa
## 6          5.4         3.9          1.7         0.4  setosa
</pre>

</div>
]]></content:encoded>
<dc:creator>yokkuns</dc:creator>
<dc:date>2013-03-30T22:13:56+09:00</dc:date>
<dc:subject>R</dc:subject>
<dc:subject>CRAN</dc:subject>
</item>
<item rdf:about="http://d.hatena.ne.jp/yokkuns/20130327/1364340792">
<title>[R][CRAN] Rで簡単にHTMLレポートを送れるパッケージを公開しました</title>
<link>http://d.hatena.ne.jp/yokkuns/20130327/1364340792</link>
<description> 先日やったRでHTMLレポート配信を、パッケージ化して公開しました！ &#91;R&#93; knitr+sendmailR でHTMLレポート配信 - yokkunsの日記 sendmailRで画像付きHTMLメールを送る - yokkunsの日記 Rでレポートメール 準備 修正版sendmailRのインストール $ git clone git@github</description>

<content:encoded><![CDATA[
<div class="section">
<p>先日やったRでHTMLレポート配信を、パッケージ化して公開しました！</p>

<ul>
<li> <a href="http://d.hatena.ne.jp/yokkuns/20121204/1354634964" target="_blank"> &#91;R&#93; knitr+sendmailR でHTMLレポート配信  - yokkunsの日記</a></li>
<li> <a href="http://d.hatena.ne.jp/yokkuns/20121211/1355236985" target="_blank">sendmailRで画像付きHTMLメールを送る - yokkunsの日記</a></li>
<li> <a href="http://www.slideshare.net/yokkuns/r-16189058" target="_blank">Rでレポートメール</a></li>
</ul>
<h4> 準備</h4>

<ul>
<li> 修正版sendmailRのインストール</li>
</ul>
<blockquote>
<p>$ git clone git@github.com:yokkuns/sendmailR.git</p>
<p>$ cd sendmailR</p>
<p>$ sudo make install</p>
</blockquote>
<p>または、パッケージを作成して普通に、install.packagesでインストール</p>
<blockquote>
<p>$ make package</p>
</blockquote>
<pre class="syntax-highlight">
&#62; install.packages<span class="synSpecial">(</span><span class="synConstant">&#34;sendmailR_1.1-2.tar.gz&#34;</span><span class="synSpecial">)</span>
</pre>

<br>


<ul>
<li> インストール</li>
</ul>
<pre class="syntax-highlight">
&#62; install.packages<span class="synSpecial">(</span><span class="synConstant">&#34;EasyHTMLReport&#34;</span><span class="synSpecial">,</span> contriburl=contrib.url<span class="synSpecial">(</span><span class="synConstant">&#34;http://cran.r-project.org/&#34;</span><span class="synSpecial">))</span>
</pre>


<ul>
<li> 読み込み</li>
</ul>
<pre class="syntax-highlight">
&#62; library<span class="synSpecial">(</span>EasyHTMLReport<span class="synSpecial">)</span>
 要求されたパッケージ sendmailR をロード中です 
 要求されたパッケージ base64enc をロード中です 
 要求されたパッケージ markdown をロード中です 
 要求されたパッケージ knitr をロード中です 
</pre>

<br>

<br>

<h4> Rmdファイルの用意</h4>
<p><a href="http://d.hatena.ne.jp/yokkuns/20121211/1355236985" target="_blank">前回</a>作った stock_anomaly_detection_sample.Rmd をそのまま使う</p>
<br>

<h4> HTMLレポート送信！</h4>
<pre class="syntax-highlight">
&#62; easyHtmlReport<span class="synSpecial">(</span>rmd.file=<span class="synConstant">&#34;stock_anomaly_detection_sample.Rmd&#34;</span><span class="synSpecial">,</span> 
                              from=<span class="synConstant">&#34;yokkuns@tkul.jp&#34;</span><span class="synSpecial">,</span>
                              to=<span class="synConstant">&#34;yokkuns@tkul.jp&#34;</span><span class="synSpecial">,</span>
                              subject=<span class="synConstant">&#34;EasyHTMLReport Sample1&#34;</span><span class="synSpecial">)</span>
</pre>

<br>

<br>

<h4> 結果</h4>
<p>こんな感じで、HTMLレポートが届く</p>
<br>

<p><a href="http://gyazo.com/119b942c3206a6b4d131a03a3e2ef98a.png" class="http-image" target="_blank"><img src="http://gyazo.com/119b942c3206a6b4d131a03a3e2ef98a.png" class="http-image" alt="http://gyazo.com/119b942c3206a6b4d131a03a3e2ef98a.png" width="500"></a></p>
</div>
]]></content:encoded>
<dc:creator>yokkuns</dc:creator>
<dc:date>2013-03-27T08:33:12+09:00</dc:date>
<dc:subject>R</dc:subject>
<dc:subject>CRAN</dc:subject>
</item>
<item rdf:about="http://d.hatena.ne.jp/yokkuns/20130108/1357602940">
<title>[データマイニング]#CROSS2013で「今日から始まるデータサイエンティスト」やります！</title>
<link>http://d.hatena.ne.jp/yokkuns/20130108/1357602940</link>
<description> 告知が大分遅くなってしまいましたが、1/18の#CROSS2013で、 「今日から始まるデータサイエンティスト」というセッションをやらせて頂きます！ エンジニアサポートCROSS 2013 求めらるデータサイエンティストの人材像や、実際の活用について語るセッションにしたいと思って</description>

<content:encoded><![CDATA[
<div class="section">
<p>告知が大分遅くなってしまいましたが、1/18の#CROSS2013で、</p>
<p>「今日から始まるデータサイエンティスト」というセッションをやらせて頂きます！</p>

<ul>
<li> <a href="http://www.cross-party.com/programs/?p=133" target="_blank">エンジニアサポートCROSS 2013</a></li>
</ul>
<br>

<p>求めらるデータサイエンティストの人材像や、実際の活用について語るセッションにしたいと思っているので、興味のある方は是非ご参加下さい！</p>
<br>

<p>以下、概要です。</p>
<h4> セッション概要</h4>
<h5> セッション１：『活躍するデータサイエンティストの人材像』</h5>
<p>近年、データサイエンティストの必要性が熱く取り上げられているが、実際の現場で必要とされる人物像・必要スキルは明確ではない。</p>
<p>今回、実際に分析ビジネスを行う経営・マネジメント陣が、分析現場で必要とされるデータサイエンティストの人物像・必要スキルを徹底議論。明日からデータサイエンティストになりたい方はぜひご参加下さい。</p>
<h5> セッション２：『今日から始める データマイニング活用術』</h5>
<p>実際のビジネスにデータマイニングを活用するためには単なる分析手法の知識だけでなく、課題・目的に応じた適切な手法を選定・実行・施策活用していくためのノウハウが必要であるが、そのノウハウはあまり知られていない。</p>
<p>今回、各領域の第一線でデータマイニングで活躍しているメンバーが、実ビジネス・サービスでのデータマイニングの活用ノウハウを共有・徹底議論。明日まで待てない！今日からデータマイニングを活用したい人は必見です。</p>
<h4> スピーカー</h4>
<h5> 倉橋 一成(@isseing333): セッション1進行</h5>

<ul>
<li> 合同会社iAnalysis</li>
<li> An expert on data analysis at Japan's premier university. 【iAnalysis】アイアナリシスの代表・最高解析責任者、「おとうさんの解析日記」。</li>
</ul>
<h5> 佐々木 智之(@crkz666)</h5>

<ul>
<li> 株式会社gumi</li>
<li> 法人向けプロバイダ事業を展開する企業でネットワーク構築・保守業務に従事した後、PC向け海外ソフトウェアの輸入販売を手がける企業でサイト構築・保守やローカライズを担当。後にポータル事業を展開する企業に買収され、PC向けオンラインゲーム事業の立ち上げを経て2011年9月にgumi入社。主にアプリを開発・運営するスタッフのための仕組み化やシステムを考えたり作ったりしてます。</li>
</ul>
<h5> 草野 隆史(@zaakya)</h5>

<ul>
<li> 株式会社ブレインパッド</li>
<li> 2004年にデータマイニングに特化したベンチャー「ブレインパッド」を創業し、代表を務めています。御蔭さまで、2011年9月にデータマイニング銘柄としては、初の東証マザーズ上場を実現。メンバーの知的好奇心の探究と、ビジネスの高成長のバランスの実現が経営の至上課題で、日々苦労しております。僕自身は、データマイニングはできましぇん！</li>
</ul>
<h5> 益村 勝将(@Masumura187)</h5>

<ul>
<li> トランスコスモス・アナリティクス株式会社</li>
<li> 総合アウトソーシング業のトランスコスモスグループで、マーケティング現場に集まるデータを用いたビッグデータ分析サービスを提供しています。昨年トランスコスモス・アナリティクス?を設立し、私はコンサルタント業と業績管理・人事・総務・経理などデータサイエンティスト達の縁の下の力持ちもしています。</li>
</ul>
<h5> 西郷 彰</h5>

<ul>
<li> リクルート株式会社</li>
<li> 2009年、リクルートに入社。</li>
<li> 行動ログを使ったレコメンドアルゴリズムの独自開発をはじめとし、ネットマーケティング上の課題を統計解析、機械学習、情報推薦手法で解決する横断組織の立ち上げを行い、現在、多数のプロジェクトを推進中。</li>
</ul>
<h5> 里 洋平(@yokkuns): セッション2進行</h5>

<ul>
<li> 株式会社ディー・エヌ・エー</li>
<li> DeNAのデータサイエンティスト。 Tokyo.Rの主催者。 確率・統計/パターン認識/機械学習/NLP/画像解析/金融工学などを勉強中。 Rパッケージガイドブックという書籍を執筆しました。<a href="http://amzn.to/dM9v0V" target="_blank">http://amzn.to/dM9v0V</a></li>
</ul>
<h5> 上村 崇(@t_uemura)</h5>

<ul>
<li> 株式会社ALBERT</li>
<li> ALBERTで社長をしています。分析力をコアとして情報を最適化します。データドリブンのCRMは今世界で一番ホットでセクシーな領域。そのど真ん中を突き進みます。アドテク領域でも独自開発の最適化エンジンでイノベーションを起こし続けます！ <a href="http://www.albert2005.co.jp/" target="_blank">http://www.albert2005.co.jp/</a></li>
</ul>
<h5> 濱田 晃一(@hamadakoichi)</h5>

<ul>
<li> 株式会社ディー・エヌ・エー</li>
<li> 博士−理論物理（量子統計場の理論）。大規模ソーシャルプラットフォームでデータイニング・機械学習によるサービス洗練。Mahout/Hadoop/Java/R。 Mahout JP 主催者。データマイニング+WEB＠東京 主催者。 HipHopダンス歴15年、毎週末3時間コーチ。</li>
</ul>
<h5> 光田 健一(@mitsudaa)</h5>

<ul>
<li> グリー株式会社</li>
</ul>
<h5> 簗島 亮次(@yanashi)</h5>

<ul>
<li> 株式会社フリークアウト</li>
<li> 株式会社フリークアウトで数字に関する業務を全般的に行っています。大学時代からネットワーク解析や機械学習の分野でコンテストに参加したり、論文を書いていたりしました。その他にもデータマイニングの可能性を求めて、短歌やビジネスプランのコンテスト・お笑いの放送作家のオーディションなどにデータマイニングを武器に参加していました。</li>
</ul>
</div>
]]></content:encoded>
<dc:creator>yokkuns</dc:creator>
<dc:date>2013-01-08T08:55:40+09:00</dc:date>
<dc:subject>データマイニング</dc:subject>
</item>
<item rdf:about="http://d.hatena.ne.jp/yokkuns/20121217/1355756912">
<title>[pig] PigのPython UDFを試してみた</title>
<link>http://d.hatena.ne.jp/yokkuns/20121217/1355756912</link>
<description> PythonでUDFが書けるので試してみた。 User Defined Functions 日付の差を計算するUDFを書いてみる とりあえず、日付の差を計算するUDFを書いてみた。 udf.py @outputSchemaで、出力のスキーマを書いて、あとは普通に書く。 #!/usr/bin/env python import time @outputSchem</description>

<content:encoded><![CDATA[
<div class="section">
<p>PythonでUDFが書けるので試してみた。</p>

<ul>
<li> <a href="http://pig.apache.org/docs/r0.9.1/udf.html#python-udfs" target="_blank">User Defined Functions</a></li>
</ul>
<br>

<h4> 日付の差を計算するUDFを書いてみる</h4>
<p>とりあえず、日付の差を計算するUDFを書いてみた。</p>
<h5>  udf.py</h5>
<p>@outputSchemaで、出力のスキーマを書いて、あとは普通に書く。</p>
<pre class="syntax-highlight">
<span class="synComment">#!/usr/bin/env python</span>

<span class="synPreProc">import</span> time

<span class="synPreProc">@</span><span class="synIdentifier">outputSchema</span>(&#34;<span class="synConstant">datediff:int</span>&#34;)
<span class="synStatement">def</span> <span class="synIdentifier">DateDiff</span>(a,b):
  a_time = time.mktime(time.strptime(a,'<span class="synConstant">%Y-%m-%d</span>'))
  b_time = time.mktime(time.strptime(b,'<span class="synConstant">%Y-%m-%d</span>'))
  <span class="synStatement">return</span> int( (a_time - b_time) / 86400 )
</pre>

<br>

<br>

<h5> date_diff_sample.pig</h5>
<p>Register 'udf.py' using jython as myfuncs って感じで記述すると、Pythonで定義したDateDiff関数を、myfuncs.DateDiffで使う事が出来る。</p>
<pre class="syntax-highlight">
Register &#39;udf.py&#39; using jython as myfuncs;

A = load &#39;dummy&#39;;
A = foreach A generate myfuncs.DateDiff(&#39;2012-12-12&#39;,&#39;2012-12-01&#39;);
dump A;
</pre>


<ul>
<li> HDFSに適当なdummyファイルを置いておくと、好きなデータを作れるので、こういうのを試すのにとても便利。

<ul>
<li> 参考: <a href="http://d.hatena.ne.jp/a_bicky/20111021/1319208983" target="_blank">Pigで直接データを記述する裏技 - あらびき日記</a></li>
</ul>
</li>
</ul>
<br>

<br>

<h5> 実行</h5>
<blockquote>
<p>$ pig -f date_diff_sample.pig</p>
<p>...</p>
<p>(11)</p>
</blockquote>
<br>

<br>

<h4> 注意点</h4>
<p>Pythonで書いたUDFは、カレントディレクトリにそのファイルが無いと動かない。</p>
<p>なので、例えば、以下のような感じで書くとエラーになる。</p>
<pre class="syntax-highlight">
Register &#39;/path/to/udf.py&#39; using jython as myfuncs;

...
</pre>

<p>そこで、以下のような簡単なスクリプトを書き、どこからでも作成したUDFを使えるようにする。</p>

<ul>
<li> pig-tool</li>
</ul>
<pre class="syntax-highlight">
<span class="synPreProc">#!/usr/bin/perl -w                                                                                                                                   </span>

<span class="synStatement">use strict</span>;
<span class="synStatement">use </span>Cwd;

<span class="synStatement">my</span> <span class="synIdentifier">$pig_exec_dir</span> = <span class="synConstant">'/path/to/pig-udf-dir'</span>; <span class="synComment"># UDFを置いてるディレクトリ</span>
<span class="synStatement">my</span> <span class="synIdentifier">$wd</span> = Cwd::getcwd();

<span class="synComment"># -fと-mオプションで指定されたパスが相対パスの場合、絶対パスに書き換える</span>
<span class="synStatement">my</span> <span class="synIdentifier">@arr</span>;
<span class="synStatement">while</span> (<span class="synStatement">my</span> <span class="synIdentifier">$opt</span> = <span class="synStatement">shift</span> <span class="synIdentifier">@ARGV</span>) {
    <span class="synStatement">if</span>( (<span class="synIdentifier">$opt</span> <span class="synStatement">eq</span> <span class="synConstant">'-m'</span> || <span class="synIdentifier">$opt</span> <span class="synStatement">eq</span> <span class="synConstant">'-param_file'</span>) ||
        (<span class="synIdentifier">$opt</span> <span class="synStatement">eq</span> <span class="synConstant">'-f'</span> || <span class="synIdentifier">$opt</span> <span class="synStatement">eq</span> <span class="synConstant">'-file'</span>) ){
        <span class="synStatement">my</span> <span class="synIdentifier">$file</span> = <span class="synStatement">shift</span> <span class="synIdentifier">@ARGV</span>;
        <span class="synStatement">die</span> (<span class="synConstant">'No exist file: $file'</span>) <span class="synStatement">unless</span> <span class="synStatement">-e</span> <span class="synIdentifier">$file</span>;
        <span class="synIdentifier">$file</span> = <span class="synConstant">&#34;</span><span class="synIdentifier">$wd</span><span class="synConstant">/</span><span class="synIdentifier">$file</span><span class="synConstant">&#34;</span> <span class="synStatement">unless</span> <span class="synIdentifier">$file</span> =~ m|^/| || <span class="synIdentifier">$file</span> =~ m|^~|;
        <span class="synIdentifier">$opt</span> = <span class="synConstant">&#34;</span><span class="synIdentifier">$opt</span><span class="synConstant"> </span><span class="synIdentifier">$file</span><span class="synConstant">&#34;</span>;
    }
    <span class="synStatement">push</span> <span class="synIdentifier">@arr</span>, <span class="synIdentifier">$opt</span>;
}

<span class="synComment"># UDFが置いてるディレクトリに移動してpigを実行</span>
<span class="synStatement">chdir</span> <span class="synIdentifier">$pig_exec_dir</span>;
<span class="synStatement">`</span><span class="synConstant">pig </span><span class="synIdentifier">@arr</span><span class="synStatement">`</span>;
</pre>


<ul>
<li> 実行</li>
</ul>
<blockquote>
<p>$ pig-tool -f hogehoge.pig</p>
</blockquote>
<br>

<h4> TokyoApache.pigについて</h4>
<p>TokyoApache.PigというPigのコミュニティも作成したので、興味のある方は是非ご参加下さい！</p>
<p>年明けくらいから活動したいなと思っています！</p>

<ul>
<li> <a href="https://groups.google.com/group/tokyo_apache_pig" target="_blank">  Tokyo.ApachePig |  Google Groups  </a></li>
</ul>
</div>
]]></content:encoded>
<dc:creator>yokkuns</dc:creator>
<dc:date>2012-12-18T00:08:32+09:00</dc:date>
<dc:subject>pig</dc:subject>
</item>
</rdf:RDF>
