rlistパッケージのススメ
-
Upload
yu-tamura -
Category
Data & Analytics
-
view
670 -
download
2
Transcript of rlistパッケージのススメ
![Page 1: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/1.jpg)
rlistパッケージの
ススメ2015. 03. 21 Nagoya. R #13
名古屋大学大学院国際開発研究科 D1 田村祐
![Page 2: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/2.jpg)
内容に入る前に• この発表では,外国語教育研究(風)のデータ分析を例として扱います
![Page 3: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/3.jpg)
概要• リスト形式のデータで作業する際に色々便利な関数が多いrlistパッケージのご紹介
![Page 4: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/4.jpg)
ソルジャーのしごと
データ収集
データ入力
データ整形・加工
データ分析・図示
質問紙
テスト
PC課題
![Page 5: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/5.jpg)
データ収集
データ入力
データ整形・加工
データ分析・図示
Excel打ち込み
マークシート読み込み
ソルジャーのしごと
![Page 6: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/6.jpg)
データ収集
データ入力
データ整形・加工
データ分析・図示
並び替え抽出
集計欠損値処理
ソルジャーのしごと
![Page 7: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/7.jpg)
データ収集
データ入力
データ整形・加工
データ分析・図示
相関分析
折れ線グラフt検定・分散分析
箱ひげ図
ソルジャーのしごと
![Page 8: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/8.jpg)
今日扱うのはここデータ収集
データ入力
データ整形・加工
データ分析・図示
並び替え抽出
集計欠損値処理
![Page 9: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/9.jpg)
はじめに• Rではよくデータフレーム形式でデータ処理を行う
• ただし,データフレーム形式では扱いにくいデータもある
• データフレーム形式とリスト形式の違い
![Page 10: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/10.jpg)
データフレーム形式とリスト形式の違い
• データフレーム形式
• リスト形式の中の特別な形がデータフレーム形式
• 1列に1変数が格納されていて,各行に1人のデータがある
• これが1つの変数に入っている状態
• ラベルによる操作が可能
• 分析をする際にはデータフレーム形式が便利
![Page 11: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/11.jpg)
ID Age TOEIC Abroad
1 24 780 y
2 20 850 n
3 28 750 n
4 48 900 y
変数
ラベル
変数 変数 変数
![Page 12: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/12.jpg)
ID Age TOEIC Abroad
1 24 780 y
2 20 850 n
3 28 750 n
4 48 900 y
個人
個人
個人
個人
![Page 13: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/13.jpg)
データフレーム形式とリスト形式の違い
• リスト形式
• 再帰的なデータ構造をもつもの
• 異なる構造のデータの集合
• 要素として文字列,数値のほかにベクトル,配列なども入る
![Page 14: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/14.jpg)
ID Name Age interests paper
1 Junya 26speaking,
task, sentence- processing
r = 8, nr = 5
2 Kuni 28
reading, grammar,
motivation, sentence-processing
r = 12, nr = 11, ws = 6
3 Yusaku 25 CALL, vocabulary r = 3, nr = 1
ラベル
r =査読有り論文,nr =査読なし論文,ws =ワークショップ・講演
数値 文字列 数値 ベクトル リスト
![Page 15: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/15.jpg)
ID Name Age interests paper
1 Junya 26speaking,
task, sentence- processing
r = 8, nr = 5
2 Kuni 28
reading, grammar,
motivation, sentence-processing
r = 12, nr = 11, ws = 6
3 Yusaku 25 CALL, vocabulary r = 3, nr = 1
ラベル
r =査読有り論文,nr =査読なし論文,ws =ワークショップ・講演
数値 文字列 数値 ベクトル リスト
read.tableではあつかえない…!!
![Page 16: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/16.jpg)
こういうデータを扱うのにrlistがとても便利
![Page 17: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/17.jpg)
リスト形式のデータの扱い
• JSONフォーマットやYAMLフォーマットがリスト形式との相性バツグン
![Page 18: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/18.jpg)
[ { "Name" : "Junya", "Age" : 26, "Interests" : [ "speaking", "task", “sentnece-processing" ], "Paper" : { “r": 8, "nr": 5 } }, { "Name" : "Kuni", "Age" : 28, "Interests" : [ "reading", “grammar”, “motivation”, “sentence-processing” ], "Papaer" : { "r" : 12, "nr" : 11, "ws" : 6 } }, { "Name" : "Yusaku", "Age" : 25,
JSONフォーマット
[ ] 配列
{ } リスト
“key” : value “ラベル” : 中身
![Page 19: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/19.jpg)
- Name: Junya Age: 26 Interests: - speaking - task - sentence-processing Paper: r: 8 nr: 5- Name: Kuni Age: 28 Interests: - reading - grammar - motivation - sentence-processing Paper: r: 12 nr: 11 ws: 6- Name: Yusaku Age: 25 Interests: - CALL - vocabulary Paper: r: 3 nr: 1
YAMLフォーマット
• こちらのほうが読みやすい?
![Page 20: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/20.jpg)
※実はexcelに先ほどのような表形式のデータがあってそれをRにlist形式で読み込もうとすると結構たいへん
![Page 21: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/21.jpg)
次回予告エクセルに打ち込んだ表形式のデータをlist形式で読み込む方法
Nagoya. R #14にて発表予定
![Page 22: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/22.jpg)
q()
![Page 23: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/23.jpg)
ではさすがに申し訳ないので
![Page 24: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/24.jpg)
rlistでなにができるかを紹介したいと思います
![Page 25: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/25.jpg)
ID Name Age interests paper
1 Junya 26speaking,
task, sentence- processing
r = 8, nr = 5
2 Kuni 28
reading, grammar,
motivation, sentence-processing
r = 12, nr = 11, ws = 6
3 Yusaku 25 CALL, vocabulary r = 3, nr = 1
ラベル
r =査読有り論文,nr =査読なし論文,ws =ワークショップ・講演
数値 文字列 数値 配列 リスト
![Page 26: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/26.jpg)
dc<- list( p1=list(name="Junya",age=26, interests=c("speaking","task","sentence-processing"), cv=list(r=8,nr=5)), p2=list(name="Kuni",age=28, interests=c("reading","grammar","motivation","sentence-processing"), cv=list(r=12,nr=11,ws=6)), p3=list(name="Yusaku",age=25, interests=c("CALL","vocabulary"), cv=list(r=3,nr=1)))
こんな感じでリストを作ります
name = 名前; age = 年齢; interests = 研究の関心; cv = 業績
![Page 27: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/27.jpg)
中身を見るにはstr()
![Page 28: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/28.jpg)
ただdcと打つと見づらい
![Page 29: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/29.jpg)
rlistでできること• マッピング
• フィルタリング
• ソート
• グループ化
• リストの結合
• 他にも色々
![Page 30: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/30.jpg)
rlistでできること• マッピング
• フィルタリング
• ソート
• グループ化
• リストの結合
• 他にも色々
![Page 31: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/31.jpg)
マッピング• list.map(リスト名, 要素名)
• リストの中で欲しい要素だけをリスト化
![Page 32: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/32.jpg)
マッピング• list.map(dc, sum(as.numeric(cv)))
• 要素名だけじゃなくて,合計の値をリスト化も可
![Page 33: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/33.jpg)
マッピング• 通常lapply()関数を使うようなことをもう少し楽にできる
![Page 34: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/34.jpg)
マッピング• 結果をベクトル形式で欲しい時はlist.mapv()関数
![Page 35: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/35.jpg)
マッピング• 欲しい要素だけ選んで新しいリストを作りたいとき
• list.select(リスト名, 要素名1, 要素名2, …)
![Page 36: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/36.jpg)
マッピング• 別に新しいリストにしなくていいから見やすい形でアウトプットしたいならlist.iter()関数
リスト名 要素名
コロンで区切って
要素名
改行いれて
cat()関数は書き出しに使う関数
![Page 37: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/37.jpg)
rlistでできること• マッピング
• フィルタリング
• ソート
• グループ化
• リストの結合
• 他にも色々
![Page 38: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/38.jpg)
rlistでできること• マッピング
• フィルタリング
• ソート
• グループ化
• リストの結合
• 他にも色々
![Page 39: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/39.jpg)
フィルタリング• list.filter(リスト名,条件式)
cvのリストの中のr(査読付き論文)が5本以上の人
![Page 40: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/40.jpg)
フィルタリング• 要素がリストでそのリスト内の条件を指定するとき
interestsの中にtaskがある人 2つ以上の条件は&でつなぐ
![Page 41: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/41.jpg)
フィルタリング• pipeRパッケージを使うと,フィルタリングして,そのリストではなくそのリストの中で欲しい情報をみるときすっきり書ける
![Page 42: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/42.jpg)
フィルタリング• pipeRパッケージを使うと,フィルタリングして,そのリストではなくそのリストの中で欲しい情報をみるときすっきり書ける pipeRの呼び出し
「続けてね」というパイプライン演算子
これを使うことで,入れ子構造でわかりにくくなるのを防げる
![Page 43: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/43.jpg)
※ここからは基本的にパイプライン演算子を使ったやり方でいきます
![Page 44: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/44.jpg)
フィルタリング• 出力結果をdata.frame型で欲しい…
interestsの中にsentence-processingがあってなおかつ査読付き論文が5本以上ある人
名前と年齢だけを選択
list.stack()関数で,data.frame型にする
![Page 45: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/45.jpg)
フィルタリング• 別に検索結果全部はいらないよう…というとき
• list.find (条件式,結果表示数)
![Page 46: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/46.jpg)
フィルタリング• 検索したあと結果表示にわざわざもう1行書くのめんどくさいよう…というとき
![Page 47: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/47.jpg)
フィルタリング• リストから丸ごと外したいとき
• list.remove(リスト名,要素名)
![Page 48: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/48.jpg)
フィルタリング• リストから条件に当てはまるものを外したいとき
• list.exclude(リスト名,条件)
![Page 49: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/49.jpg)
フィルタリング• 欠損値の処理
• list.clean(リスト名,recursive=T/F)ネストしているリストの要素に対しても処理を行う場合はT,一番上の層だけでいい場合はF
![Page 50: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/50.jpg)
フィルタリング• 欠損値の処理
• list.clean(リスト名,recursive=T/F)ネストしているリストの要素に対しても処理を行う場合はT,一番上の層だけでいい場合はF
![Page 51: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/51.jpg)
フィルタリング• 欠損値の処理(長さがゼロのベクトルも処理)
• list.clean(リスト名,式,recursive=T/F)
長さがゼロのベクトルも
![Page 52: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/52.jpg)
フィルタリング• 欠損値の処理(長さがゼロのベクトルも処理)
• list.clean(リスト名,式,recursive=T/F)
長さがゼロのベクトルも
![Page 53: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/53.jpg)
フィルタリング• 欠損値の処理(とにかく全部消したい!)
• list.clean(リスト名,式,recursive=T/F)
どんなNAをも消す
![Page 54: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/54.jpg)
rlistでできること• マッピング
• フィルタリング
• ソート
• グループ化
• リストの結合
• 他にも色々
![Page 55: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/55.jpg)
rlistでできること• マッピング
• フィルタリング
• ソート
• グループ化
• リストの結合
• 他にも色々
![Page 56: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/56.jpg)
ソート• 順位を表示(デフォルトは昇順)
• list.order(リスト名,要素名) • list.order(リスト名,-要素名)or • list.order(リスト名, (要素名))で降順
小さい方から,リストの3番目,1番目,2番目の順で並ぶという
こと
![Page 57: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/57.jpg)
ソート• ソートしたリストを作る
• list.sort(リスト名,要素名)※パイプライン演算子を使うとこういう書き方になる
![Page 58: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/58.jpg)
ソート• もちろん要素内のリストを参照したい場合もOK
• list.sort(リスト名,要素名)※パイプライン演算子を使うとこういう書き方になる
![Page 59: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/59.jpg)
rlistでできること• マッピング
• フィルタリング
• ソート
• グループ化
• リストの結合
• 他にも色々
![Page 60: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/60.jpg)
rlistでできること• マッピング
• フィルタリング
• ソート
• グループ化
• リストの結合
• 他にも色々
![Page 61: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/61.jpg)
グループ化• 要素,条件 etc.などでグループ分けする
• list.group(リスト名,条件)結果の出力もリスト形式
![Page 62: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/62.jpg)
グループ化• 要素,条件 etc.などでグループ分けする
• グループ分けしたリストをさらにいじいじできる
リストの要素となっている下位リストの名前をベクトル形式で表示
![Page 63: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/63.jpg)
グループ化• リスト内のベクトルの要素をすべてみる
• list.cases(リスト名,要素名)
![Page 64: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/64.jpg)
グループ化• リスト内のベクトルの要素で場合分けしてグループ化
• list.class(リスト名,要素名)
![Page 65: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/65.jpg)
グループ化• リスト内のベクトルの要素で場合分けしてグループ化
• list.groupでやると,各要素ごとにグループ化できない
![Page 66: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/66.jpg)
グループ化• リスト内のベクトルの要素で場合分けしてグループ化 • もちろんこれまで同様グループ分けしたリストもいじいじ可
![Page 67: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/67.jpg)
グループ化• リストのデータをテーブル形式で出力 • list.table(リスト名,要素1,要素2)
![Page 68: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/68.jpg)
rlistでできること• マッピング
• フィルタリング
• ソート
• グループ化
• リストの結合
• 他にも色々
![Page 69: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/69.jpg)
rlistでできること• マッピング
• フィルタリング
• ソート
• グループ化
• リストの結合
• 他にも色々
![Page 70: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/70.jpg)
リストの結合• 別の新しいリスト作ったった
• このリストを既存のリストと結合したいよう…というとき
• list.join(リスト1,リスト2,共通要素)
![Page 71: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/71.jpg)
![Page 72: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/72.jpg)
rlistでできること• マッピング
• フィルタリング
• ソート
• グループ化
• リストの結合
• 他にも色々
![Page 73: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/73.jpg)
rlistでできること• マッピング
• フィルタリング
• ソート
• グループ化
• リストの結合
• 他にも色々
![Page 74: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/74.jpg)
他にも色々• リストの書き出し
• list.save(リスト名,”ファイル名”) • JSON, YAML, RData, RDS形式に対応 • 拡張子の指定をしないとRData形式で保存される
• リストの読み込み • list.load(“ファイル名”)
![Page 75: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/75.jpg)
他にも色々• この他にも,検索,比較などができたり,ここで紹介できなかった関数もかなりあります
• ラムダ式も使えます(※ぼくがいまいちわかってない)
![Page 76: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/76.jpg)
まとめ• どうしてもテーブル形式では扱いにくいような階層的なデータなどを扱うのにリスト形式が便利
• リスト形式のデータをいじいじするのにrlistパッケージがとっても便利
• マッピング,フィルタリング,グループ分け,リストの結合,情報の更新など,いじいじしたいことが基本的になんでもできる
![Page 77: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/77.jpg)
まとめ• 今回の発表で紹介した関数などは,webのrlist tutorialのページに詳しく書かれていますので,そちらをご参照ください
![Page 78: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/78.jpg)
参考URL• Leihcrev’s memo 入門本編6章 リストとデータフレーム― https://
sites.google.com/site/leihcrev/r/lists-and-data-frames • rlist Tutorial ― http://renkun.me/rlist-tutorial/index.html • rlist Tutorial (日本語訳)― http://renkun.me/rlist/ja/
• R-Source 19. 行列の作成―http://cse.naro.affrc.go.jp/takezawa/r-tips/r/19.html
• R-Source 23.リスト― http://cse.naro.affrc.go.jp/takezawa/r-tips/r/23.html
• R-Source 39.データフレーム事始― http://cse.naro.affrc.go.jp/takezawa/r-tips/r/39.html
• 【超訳】pipeR の使い方 #rstatsj ― http://qiita.com/hoxo_m/items/b80778d46684b818abd2
![Page 79: rlistパッケージのススメ](https://reader034.fdocument.pub/reader034/viewer/2022042817/55a93cc61a28ab99758b46c8/html5/thumbnails/79.jpg)
rlistパッケージのススメ
contact info
田村 祐名古屋大学大学院国際開発研究科
http://tamurayu.wordpress.com/
• 階層的なデータはリスト形式と相性◎
• ◯◯の中の☓☓と書きたいときは%in%
• %>>%使えばとっても読みやすい
• 問題は,JSONやYAML形式のデータではなく表形式のデータをどうやってリスト形式としてRに読み込むか