SlideShare una empresa de Scribd logo
1 de 20
Descargar para leer sin conexión
10分で分かるRパッケージの作り方


          @yokkuns 里 洋平
   第6回R勉強会@東京(#TokyoR06)
                2010/06/26
AGENDA
   自己紹介
   パッケージの作り方
      準備
      関数とかクラス作成
      スケルトン生成
      編集してビルド
   CRANにアップ
AGENDA
   自己紹介
   パッケージの作り方
      準備
      関数とかクラス作成
      スケルトン生成
      編集してビルド
   CRANにアップ
自己紹介
   id : yokkuns
   名前 : 里 洋平
   所属 : tkul、Tokyo.R、数式ニヤニヤ勉強会
   確率統計とかデータマイニング、機械学習など勉強中
    です。
   プログラミング言語は、C/C+
    +/Perl/Ruby/PHP/R/JS/Javaとかやってます。
   最近、Androidアプリにも手を出し始めました
AGENDA
   自己紹介
   パッケージの作り方
      準備
      関数とかクラス作成
      スケルトン生成
      編集してビルド
   CRANにアップ
準備(windowsの場合)
   Rtoolsのインストール
       http://www.murdoch-sutherland.com/Rtools/
          Cygwin、Perl、makeなどがまとめて入ってる
          参考   : http://alturl.com/ncic
関数とかクラスの作成
スケルトン作成
> package.skeleton(list=c("yahooWebSearch", "yahooBlogSearch"),
                    name="RSearchYJ")

以下のようなファイル・ディレクトリが生成される
RSearchYJ/
         DESCRIPTION
         R/
           - yahooBlogSearch.R
           - yahooWebSearch.R
         Read-and-delete-me
         man/
              - RSearchYJ-package.Rd
              - yahooBlogSerach.Rd
              - yahooWebSearch.Rd


Read-and-delete-meファイルは、その名通り、読んだら消す。
編集1
   RSearchYJ/以下にNAMESPACE を作成し、外から見
    えるようにした関数を書く
       export(yahooBlogSearch, yahooWebSearch)
   DESCRIPTIONの編集
編集2
   マニュアルを編集
       man以下の全ファイルtitleが必須
         書かないと、インストールに失敗する




       今回は、以下の3ファイル
         RSearchYJ-package.Rd
         yahooBlogSearch.Rd
         yahooWebSearch.Rd
編集3
   クラスを作成した場合、このやり方だとクラス定義が出力されな
    いので自分で作成する。
       RsearchYJ/R/以下に、classes.Rとかでファイルを作成し、そこに定義を書く
        setClass("status",
                 representation(
                       text="character",
                       favorited="logical",
                       replyToSN="character",
                       created="character",
                       truncated="logical",
                       replyToSID="numeric",
                       id="numeric",
                       replyToUID="numeric",
                       statusSource="character",
                       screenName="character"
                       )
                )
ビルド

$ R CMD build RSearchYJ
  * checking for file 'RSearchYJ/DESCRIPTION' ... OK
  * preparing 'RSearchYJ':
  * checking DESCRIPTION meta-information ... OK
  * removing junk files
  * checking for LF line-endings in source and make files
  * checking for empty or unneeded directories
  * building 'RSearchYJ_0.0.1.tar.gz'
ビルド

$ R CMD build RSearchYJ
  * checking for file 'RSearchYJ/DESCRIPTION' ... OK
  * preparing 'RSearchYJ':
  * checking DESCRIPTION meta-information ... OK
  * removing junk files
  * checking for LF line-endings in source and make files
  * checking for empty or unneeded directories
  * building 'RSearchYJ_0.0.1.tar.gz'

                      完成!
AGENDA
   自己紹介
   パッケージの作り方
      準備
      関数とかクラス作成
      スケルトン生成
      編集してビルド
   CRANにアップ
CRANにアップ
   作成したパッケージを、
    ftp://cran.r-project.org/incoming
    にアップロード

   cran@r-project.org 宛てに、アップロードした旨を送信

   cranに登録されるのを寝て待つ
無事アップされました
R勉強会@東京 #07以降




   発表者募集中です!
数式ニヤニヤ勉強会

 7/28~7/3のどこかで開催予定!
ライブ告知



        8/14(土)に
        ライブ出ることに
        なりました!
ご清聴ありがとうございました

Más contenido relacionado

La actualidad más candente

実践で学ぶネットワーク分析
実践で学ぶネットワーク分析実践で学ぶネットワーク分析
実践で学ぶネットワーク分析Mitsunori Sato
 
ベイジアンモデリングによるマーケティングサイエンス〜状態空間モデルを用いたモデリング
ベイジアンモデリングによるマーケティングサイエンス〜状態空間モデルを用いたモデリングベイジアンモデリングによるマーケティングサイエンス〜状態空間モデルを用いたモデリング
ベイジアンモデリングによるマーケティングサイエンス〜状態空間モデルを用いたモデリング宏喜 佐野
 
Rプログラミング02 データ入出力編
Rプログラミング02 データ入出力編Rプログラミング02 データ入出力編
Rプログラミング02 データ入出力編wada, kazumi
 
多重代入法の書き方 公開用
多重代入法の書き方 公開用 多重代入法の書き方 公開用
多重代入法の書き方 公開用 Koichiro Gibo
 
DARM勉強会第3回 (missing data analysis)
DARM勉強会第3回 (missing data analysis)DARM勉強会第3回 (missing data analysis)
DARM勉強会第3回 (missing data analysis)Masaru Tokuoka
 
Visualizing Data Using t-SNE
Visualizing Data Using t-SNEVisualizing Data Using t-SNE
Visualizing Data Using t-SNETomoki Hayashi
 
RとSQLiteで気軽にデータベース作成
RとSQLiteで気軽にデータベース作成RとSQLiteで気軽にデータベース作成
RとSQLiteで気軽にデータベース作成弘毅 露崎
 
Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理wada, kazumi
 
臨床疫学研究における傾向スコア分析の使い⽅ 〜観察研究における治療効果研究〜
臨床疫学研究における傾向スコア分析の使い⽅ 〜観察研究における治療効果研究〜臨床疫学研究における傾向スコア分析の使い⽅ 〜観察研究における治療効果研究〜
臨床疫学研究における傾向スコア分析の使い⽅ 〜観察研究における治療効果研究〜Yasuyuki Okumura
 
Visual Studio CodeでRを使う
Visual Studio CodeでRを使うVisual Studio CodeでRを使う
Visual Studio CodeでRを使うAtsushi Hayakawa
 
第4回DARM勉強会 (構造方程式モデリング)
第4回DARM勉強会 (構造方程式モデリング)第4回DARM勉強会 (構造方程式モデリング)
第4回DARM勉強会 (構造方程式モデリング)Yoshitake Takebayashi
 
for関数を使った繰り返し処理によるヒストグラムの一括出力
for関数を使った繰り返し処理によるヒストグラムの一括出力for関数を使った繰り返し処理によるヒストグラムの一括出力
for関数を使った繰り返し処理によるヒストグラムの一括出力imuyaoti
 
StanとRでベイズ統計モデリング読書会 Chapter 7(7.6-7.9) 回帰分析の悩みどころ ~統計の力で歌うまになりたい~
StanとRでベイズ統計モデリング読書会 Chapter 7(7.6-7.9) 回帰分析の悩みどころ ~統計の力で歌うまになりたい~StanとRでベイズ統計モデリング読書会 Chapter 7(7.6-7.9) 回帰分析の悩みどころ ~統計の力で歌うまになりたい~
StanとRでベイズ統計モデリング読書会 Chapter 7(7.6-7.9) 回帰分析の悩みどころ ~統計の力で歌うまになりたい~nocchi_airport
 
機械学習を用いた予測モデル構築・評価
機械学習を用いた予測モデル構築・評価機械学習を用いた予測モデル構築・評価
機械学習を用いた予測モデル構築・評価Shintaro Fukushima
 
ベイズ統計入門
ベイズ統計入門ベイズ統計入門
ベイズ統計入門Miyoshi Yuya
 
ベイズ機械学習(an introduction to bayesian machine learning)
ベイズ機械学習(an introduction to bayesian machine learning)ベイズ機械学習(an introduction to bayesian machine learning)
ベイズ機械学習(an introduction to bayesian machine learning)医療IT数学同好会 T/T
 
バリデーション研究の入門
バリデーション研究の入門バリデーション研究の入門
バリデーション研究の入門Yasuyuki Okumura
 
Deep Learningと他の分類器をRで比べてみよう in Japan.R 2014
Deep Learningと他の分類器をRで比べてみよう in Japan.R 2014Deep Learningと他の分類器をRで比べてみよう in Japan.R 2014
Deep Learningと他の分類器をRで比べてみよう in Japan.R 2014Takashi J OZAKI
 

La actualidad más candente (20)

実践で学ぶネットワーク分析
実践で学ぶネットワーク分析実践で学ぶネットワーク分析
実践で学ぶネットワーク分析
 
ベイジアンモデリングによるマーケティングサイエンス〜状態空間モデルを用いたモデリング
ベイジアンモデリングによるマーケティングサイエンス〜状態空間モデルを用いたモデリングベイジアンモデリングによるマーケティングサイエンス〜状態空間モデルを用いたモデリング
ベイジアンモデリングによるマーケティングサイエンス〜状態空間モデルを用いたモデリング
 
Rプログラミング02 データ入出力編
Rプログラミング02 データ入出力編Rプログラミング02 データ入出力編
Rプログラミング02 データ入出力編
 
Rの高速化
Rの高速化Rの高速化
Rの高速化
 
多重代入法の書き方 公開用
多重代入法の書き方 公開用 多重代入法の書き方 公開用
多重代入法の書き方 公開用
 
DARM勉強会第3回 (missing data analysis)
DARM勉強会第3回 (missing data analysis)DARM勉強会第3回 (missing data analysis)
DARM勉強会第3回 (missing data analysis)
 
Visualizing Data Using t-SNE
Visualizing Data Using t-SNEVisualizing Data Using t-SNE
Visualizing Data Using t-SNE
 
RとSQLiteで気軽にデータベース作成
RとSQLiteで気軽にデータベース作成RとSQLiteで気軽にデータベース作成
RとSQLiteで気軽にデータベース作成
 
Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理
 
臨床疫学研究における傾向スコア分析の使い⽅ 〜観察研究における治療効果研究〜
臨床疫学研究における傾向スコア分析の使い⽅ 〜観察研究における治療効果研究〜臨床疫学研究における傾向スコア分析の使い⽅ 〜観察研究における治療効果研究〜
臨床疫学研究における傾向スコア分析の使い⽅ 〜観察研究における治療効果研究〜
 
Visual Studio CodeでRを使う
Visual Studio CodeでRを使うVisual Studio CodeでRを使う
Visual Studio CodeでRを使う
 
第4回DARM勉強会 (構造方程式モデリング)
第4回DARM勉強会 (構造方程式モデリング)第4回DARM勉強会 (構造方程式モデリング)
第4回DARM勉強会 (構造方程式モデリング)
 
for関数を使った繰り返し処理によるヒストグラムの一括出力
for関数を使った繰り返し処理によるヒストグラムの一括出力for関数を使った繰り返し処理によるヒストグラムの一括出力
for関数を使った繰り返し処理によるヒストグラムの一括出力
 
StanとRでベイズ統計モデリング読書会 Chapter 7(7.6-7.9) 回帰分析の悩みどころ ~統計の力で歌うまになりたい~
StanとRでベイズ統計モデリング読書会 Chapter 7(7.6-7.9) 回帰分析の悩みどころ ~統計の力で歌うまになりたい~StanとRでベイズ統計モデリング読書会 Chapter 7(7.6-7.9) 回帰分析の悩みどころ ~統計の力で歌うまになりたい~
StanとRでベイズ統計モデリング読書会 Chapter 7(7.6-7.9) 回帰分析の悩みどころ ~統計の力で歌うまになりたい~
 
階層ベイズとWAIC
階層ベイズとWAIC階層ベイズとWAIC
階層ベイズとWAIC
 
機械学習を用いた予測モデル構築・評価
機械学習を用いた予測モデル構築・評価機械学習を用いた予測モデル構築・評価
機械学習を用いた予測モデル構築・評価
 
ベイズ統計入門
ベイズ統計入門ベイズ統計入門
ベイズ統計入門
 
ベイズ機械学習(an introduction to bayesian machine learning)
ベイズ機械学習(an introduction to bayesian machine learning)ベイズ機械学習(an introduction to bayesian machine learning)
ベイズ機械学習(an introduction to bayesian machine learning)
 
バリデーション研究の入門
バリデーション研究の入門バリデーション研究の入門
バリデーション研究の入門
 
Deep Learningと他の分類器をRで比べてみよう in Japan.R 2014
Deep Learningと他の分類器をRで比べてみよう in Japan.R 2014Deep Learningと他の分類器をRで比べてみよう in Japan.R 2014
Deep Learningと他の分類器をRで比べてみよう in Japan.R 2014
 

Similar a 10分で分かるRパッケージの作り方

ウェブから情報をあつめる
ウェブから情報をあつめるウェブから情報をあつめる
ウェブから情報をあつめるShuhei Iitsuka
 
第2回品川Redmine勉強会(日本語全文検索)
第2回品川Redmine勉強会(日本語全文検索)第2回品川Redmine勉強会(日本語全文検索)
第2回品川Redmine勉強会(日本語全文検索)Masanori Machii
 
Lisp batton - Common LISP
Lisp batton - Common LISPLisp batton - Common LISP
Lisp batton - Common LISPMasaomi CHIBA
 
データサイエンスワールドからC++を眺めてみる
データサイエンスワールドからC++を眺めてみるデータサイエンスワールドからC++を眺めてみる
データサイエンスワールドからC++を眺めてみるShintaro Fukushima
 
Rあんなときこんなとき(tokyo r#12)
Rあんなときこんなとき(tokyo r#12)Rあんなときこんなとき(tokyo r#12)
Rあんなときこんなとき(tokyo r#12)Shintaro Fukushima
 
Reladomo in Scala #scala_ks
Reladomo in Scala #scala_ks Reladomo in Scala #scala_ks
Reladomo in Scala #scala_ks Hiroshi Ito
 
Tech Fielders 2009/9/18 LT
Tech Fielders 2009/9/18 LTTech Fielders 2009/9/18 LT
Tech Fielders 2009/9/18 LTterurou
 
Ruka 20191212
Ruka 20191212Ruka 20191212
Ruka 20191212RukaMenda
 
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)Hiroaki KOBAYASHI
 
Djangoフレームワークの紹介
Djangoフレームワークの紹介Djangoフレームワークの紹介
Djangoフレームワークの紹介Shinya Okano
 
Rとcdisc@moss10 公開用
Rとcdisc@moss10 公開用Rとcdisc@moss10 公開用
Rとcdisc@moss10 公開用Masafumi Okada
 
CodeIgniterによるPhwittr
CodeIgniterによるPhwittrCodeIgniterによるPhwittr
CodeIgniterによるPhwittrkenjis
 
Apache Sling におけるサービス運用妨害(無限ループ)の脆弱性
Apache Sling におけるサービス運用妨害(無限ループ)の脆弱性Apache Sling におけるサービス運用妨害(無限ループ)の脆弱性
Apache Sling におけるサービス運用妨害(無限ループ)の脆弱性JPCERT Coordination Center
 
[東京] JapanSharePointGroup 勉強会 #2
[東京] JapanSharePointGroup 勉強会 #2[東京] JapanSharePointGroup 勉強会 #2
[東京] JapanSharePointGroup 勉強会 #2Atsuo Yamasaki
 
知って得する標準関数の使い方
知って得する標準関数の使い方知って得する標準関数の使い方
知って得する標準関数の使い方Soudai Sone
 

Similar a 10分で分かるRパッケージの作り方 (20)

Rでreproducible research
Rでreproducible researchRでreproducible research
Rでreproducible research
 
ウェブから情報をあつめる
ウェブから情報をあつめるウェブから情報をあつめる
ウェブから情報をあつめる
 
第2回品川Redmine勉強会(日本語全文検索)
第2回品川Redmine勉強会(日本語全文検索)第2回品川Redmine勉強会(日本語全文検索)
第2回品川Redmine勉強会(日本語全文検索)
 
Lisp batton - Common LISP
Lisp batton - Common LISPLisp batton - Common LISP
Lisp batton - Common LISP
 
データサイエンスワールドからC++を眺めてみる
データサイエンスワールドからC++を眺めてみるデータサイエンスワールドからC++を眺めてみる
データサイエンスワールドからC++を眺めてみる
 
Rあんなときこんなとき(tokyo r#12)
Rあんなときこんなとき(tokyo r#12)Rあんなときこんなとき(tokyo r#12)
Rあんなときこんなとき(tokyo r#12)
 
Reladomo in Scala #scala_ks
Reladomo in Scala #scala_ks Reladomo in Scala #scala_ks
Reladomo in Scala #scala_ks
 
d3sparql.js
d3sparql.js d3sparql.js
d3sparql.js
 
Tech Fielders 2009/9/18 LT
Tech Fielders 2009/9/18 LTTech Fielders 2009/9/18 LT
Tech Fielders 2009/9/18 LT
 
Ruka 20191212
Ruka 20191212Ruka 20191212
Ruka 20191212
 
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)
仕事の手離れを良くする手段としての、静的検査のあるテンプレートエンジン (YATT::Lite talk at 2014 テンプレートエンジンNight)
 
Djangoフレームワークの紹介
Djangoフレームワークの紹介Djangoフレームワークの紹介
Djangoフレームワークの紹介
 
Rとcdisc@moss10 公開用
Rとcdisc@moss10 公開用Rとcdisc@moss10 公開用
Rとcdisc@moss10 公開用
 
CodeIgniterによるPhwittr
CodeIgniterによるPhwittrCodeIgniterによるPhwittr
CodeIgniterによるPhwittr
 
Haikara
HaikaraHaikara
Haikara
 
Apache Sling におけるサービス運用妨害(無限ループ)の脆弱性
Apache Sling におけるサービス運用妨害(無限ループ)の脆弱性Apache Sling におけるサービス運用妨害(無限ループ)の脆弱性
Apache Sling におけるサービス運用妨害(無限ループ)の脆弱性
 
Introduction of Python
Introduction of PythonIntroduction of Python
Introduction of Python
 
[東京] JapanSharePointGroup 勉強会 #2
[東京] JapanSharePointGroup 勉強会 #2[東京] JapanSharePointGroup 勉強会 #2
[東京] JapanSharePointGroup 勉強会 #2
 
知って得する標準関数の使い方
知って得する標準関数の使い方知って得する標準関数の使い方
知って得する標準関数の使い方
 
Hadoop jobbuilder
Hadoop jobbuilderHadoop jobbuilder
Hadoop jobbuilder
 

Más de Yohei Sato

Tokyor60 r data_science_part1
Tokyor60 r data_science_part1Tokyor60 r data_science_part1
Tokyor60 r data_science_part1Yohei Sato
 
Tokyor60 opening
Tokyor60 openingTokyor60 opening
Tokyor60 openingYohei Sato
 
Tokyor45 カーネル多変量解析第2章 カーネル多変量解析の仕組み
Tokyor45 カーネル多変量解析第2章 カーネル多変量解析の仕組みTokyor45 カーネル多変量解析第2章 カーネル多変量解析の仕組み
Tokyor45 カーネル多変量解析第2章 カーネル多変量解析の仕組みYohei Sato
 
Tokyor42_r_datamining_18
Tokyor42_r_datamining_18Tokyor42_r_datamining_18
Tokyor42_r_datamining_18Yohei Sato
 
Tokyor42 ggplot2
Tokyor42 ggplot2Tokyor42 ggplot2
Tokyor42 ggplot2Yohei Sato
 
Tokyor39 yokkuns
Tokyor39 yokkunsTokyor39 yokkuns
Tokyor39 yokkunsYohei Sato
 
EasyHtmlReportの紹介
EasyHtmlReportの紹介EasyHtmlReportの紹介
EasyHtmlReportの紹介Yohei Sato
 
20131206 japan r
20131206 japan r20131206 japan r
20131206 japan rYohei Sato
 
Tokyor35 人工データの発生
Tokyor35 人工データの発生Tokyor35 人工データの発生
Tokyor35 人工データの発生Yohei Sato
 
ドリコムの分析環境とデータサイエンス活用事例
ドリコムの分析環境とデータサイエンス活用事例ドリコムの分析環境とデータサイエンス活用事例
ドリコムの分析環境とデータサイエンス活用事例Yohei Sato
 
R言語で学ぶマーケティング分析 競争ポジショニング戦略
R言語で学ぶマーケティング分析 競争ポジショニング戦略R言語で学ぶマーケティング分析 競争ポジショニング戦略
R言語で学ぶマーケティング分析 競争ポジショニング戦略Yohei Sato
 
Rでレポートメール
RでレポートメールRでレポートメール
RでレポートメールYohei Sato
 
Rで階層ベイズモデル
Rで階層ベイズモデルRで階層ベイズモデル
Rで階層ベイズモデルYohei Sato
 
Rでピボットテーブル
RでピボットテーブルRでピボットテーブル
RでピボットテーブルYohei Sato
 
第3回Japan rパネルディスカッション
第3回Japan rパネルディスカッション第3回Japan rパネルディスカッション
第3回Japan rパネルディスカッションYohei Sato
 
Tokyor26 data fusion
Tokyor26 data fusionTokyor26 data fusion
Tokyor26 data fusionYohei Sato
 
Tokyor24 yokkuns
Tokyor24 yokkunsTokyor24 yokkuns
Tokyor24 yokkunsYohei Sato
 
Tokyowebmining19 data fusion
Tokyowebmining19 data fusionTokyowebmining19 data fusion
Tokyowebmining19 data fusionYohei Sato
 
傾向スコア解析とUplift Modelling
傾向スコア解析とUplift Modelling傾向スコア解析とUplift Modelling
傾向スコア解析とUplift ModellingYohei Sato
 
Complex network ws_percolation
Complex network ws_percolationComplex network ws_percolation
Complex network ws_percolationYohei Sato
 

Más de Yohei Sato (20)

Tokyor60 r data_science_part1
Tokyor60 r data_science_part1Tokyor60 r data_science_part1
Tokyor60 r data_science_part1
 
Tokyor60 opening
Tokyor60 openingTokyor60 opening
Tokyor60 opening
 
Tokyor45 カーネル多変量解析第2章 カーネル多変量解析の仕組み
Tokyor45 カーネル多変量解析第2章 カーネル多変量解析の仕組みTokyor45 カーネル多変量解析第2章 カーネル多変量解析の仕組み
Tokyor45 カーネル多変量解析第2章 カーネル多変量解析の仕組み
 
Tokyor42_r_datamining_18
Tokyor42_r_datamining_18Tokyor42_r_datamining_18
Tokyor42_r_datamining_18
 
Tokyor42 ggplot2
Tokyor42 ggplot2Tokyor42 ggplot2
Tokyor42 ggplot2
 
Tokyor39 yokkuns
Tokyor39 yokkunsTokyor39 yokkuns
Tokyor39 yokkuns
 
EasyHtmlReportの紹介
EasyHtmlReportの紹介EasyHtmlReportの紹介
EasyHtmlReportの紹介
 
20131206 japan r
20131206 japan r20131206 japan r
20131206 japan r
 
Tokyor35 人工データの発生
Tokyor35 人工データの発生Tokyor35 人工データの発生
Tokyor35 人工データの発生
 
ドリコムの分析環境とデータサイエンス活用事例
ドリコムの分析環境とデータサイエンス活用事例ドリコムの分析環境とデータサイエンス活用事例
ドリコムの分析環境とデータサイエンス活用事例
 
R言語で学ぶマーケティング分析 競争ポジショニング戦略
R言語で学ぶマーケティング分析 競争ポジショニング戦略R言語で学ぶマーケティング分析 競争ポジショニング戦略
R言語で学ぶマーケティング分析 競争ポジショニング戦略
 
Rでレポートメール
RでレポートメールRでレポートメール
Rでレポートメール
 
Rで階層ベイズモデル
Rで階層ベイズモデルRで階層ベイズモデル
Rで階層ベイズモデル
 
Rでピボットテーブル
RでピボットテーブルRでピボットテーブル
Rでピボットテーブル
 
第3回Japan rパネルディスカッション
第3回Japan rパネルディスカッション第3回Japan rパネルディスカッション
第3回Japan rパネルディスカッション
 
Tokyor26 data fusion
Tokyor26 data fusionTokyor26 data fusion
Tokyor26 data fusion
 
Tokyor24 yokkuns
Tokyor24 yokkunsTokyor24 yokkuns
Tokyor24 yokkuns
 
Tokyowebmining19 data fusion
Tokyowebmining19 data fusionTokyowebmining19 data fusion
Tokyowebmining19 data fusion
 
傾向スコア解析とUplift Modelling
傾向スコア解析とUplift Modelling傾向スコア解析とUplift Modelling
傾向スコア解析とUplift Modelling
 
Complex network ws_percolation
Complex network ws_percolationComplex network ws_percolation
Complex network ws_percolation
 

10分で分かるRパッケージの作り方

  • 1. 10分で分かるRパッケージの作り方 @yokkuns 里 洋平 第6回R勉強会@東京(#TokyoR06) 2010/06/26
  • 2. AGENDA  自己紹介  パッケージの作り方  準備  関数とかクラス作成  スケルトン生成  編集してビルド  CRANにアップ
  • 3. AGENDA  自己紹介  パッケージの作り方  準備  関数とかクラス作成  スケルトン生成  編集してビルド  CRANにアップ
  • 4. 自己紹介  id : yokkuns  名前 : 里 洋平  所属 : tkul、Tokyo.R、数式ニヤニヤ勉強会  確率統計とかデータマイニング、機械学習など勉強中 です。  プログラミング言語は、C/C+ +/Perl/Ruby/PHP/R/JS/Javaとかやってます。  最近、Androidアプリにも手を出し始めました
  • 5. AGENDA  自己紹介  パッケージの作り方  準備  関数とかクラス作成  スケルトン生成  編集してビルド  CRANにアップ
  • 6. 準備(windowsの場合)  Rtoolsのインストール  http://www.murdoch-sutherland.com/Rtools/  Cygwin、Perl、makeなどがまとめて入ってる  参考 : http://alturl.com/ncic
  • 8. スケルトン作成 > package.skeleton(list=c("yahooWebSearch", "yahooBlogSearch"), name="RSearchYJ") 以下のようなファイル・ディレクトリが生成される RSearchYJ/ DESCRIPTION R/ - yahooBlogSearch.R - yahooWebSearch.R Read-and-delete-me man/ - RSearchYJ-package.Rd - yahooBlogSerach.Rd - yahooWebSearch.Rd Read-and-delete-meファイルは、その名通り、読んだら消す。
  • 9. 編集1  RSearchYJ/以下にNAMESPACE を作成し、外から見 えるようにした関数を書く  export(yahooBlogSearch, yahooWebSearch)  DESCRIPTIONの編集
  • 10. 編集2  マニュアルを編集  man以下の全ファイルtitleが必須  書かないと、インストールに失敗する  今回は、以下の3ファイル  RSearchYJ-package.Rd  yahooBlogSearch.Rd  yahooWebSearch.Rd
  • 11. 編集3  クラスを作成した場合、このやり方だとクラス定義が出力されな いので自分で作成する。  RsearchYJ/R/以下に、classes.Rとかでファイルを作成し、そこに定義を書く setClass("status", representation( text="character", favorited="logical", replyToSN="character", created="character", truncated="logical", replyToSID="numeric", id="numeric", replyToUID="numeric", statusSource="character", screenName="character" ) )
  • 12. ビルド $ R CMD build RSearchYJ * checking for file 'RSearchYJ/DESCRIPTION' ... OK * preparing 'RSearchYJ': * checking DESCRIPTION meta-information ... OK * removing junk files * checking for LF line-endings in source and make files * checking for empty or unneeded directories * building 'RSearchYJ_0.0.1.tar.gz'
  • 13. ビルド $ R CMD build RSearchYJ * checking for file 'RSearchYJ/DESCRIPTION' ... OK * preparing 'RSearchYJ': * checking DESCRIPTION meta-information ... OK * removing junk files * checking for LF line-endings in source and make files * checking for empty or unneeded directories * building 'RSearchYJ_0.0.1.tar.gz' 完成!
  • 14. AGENDA  自己紹介  パッケージの作り方  準備  関数とかクラス作成  スケルトン生成  編集してビルド  CRANにアップ
  • 15. CRANにアップ  作成したパッケージを、 ftp://cran.r-project.org/incoming にアップロード  cran@r-project.org 宛てに、アップロードした旨を送信  cranに登録されるのを寝て待つ
  • 17. R勉強会@東京 #07以降 発表者募集中です!
  • 19. ライブ告知 8/14(土)に ライブ出ることに なりました!