« [R]ヌル(0x00)を含むテキストファイルを高速に読み込む | トップページ | [R]SQLiteを使う »

2024年2月23日 (金)

[R]tibbleを任意の列のみのtibbleに変換する

tidyverse(dplyr)パッケージのselect関数を使う。以下、あらかじめ用意してあるtibbleを使用した動作例。列名を指定するとその列だけを含むtibble(ベクトルではない!)に変換する。:(コロン)を使うとそれを両端としたその範囲の列すべてを抜き出す。接頭辞として-(マイナス)を付けるとその列を含まないという意味になる。列の指定には列名と番号(1~)が使える。等号(=)を使うことで列名を変えて取り出すこともできる。

> library(tidyverse)
> tib %>% as.data.frame()
no name prizemoney seiyu dummydate
1 8 ウオッカ 13.0487 大橋彩香 2031-02-03
2 30 ライスシャワー 6.6686 石見舞菜香 2032-11-12
3 45 スーパークリーク 5.5610 優木かな 2033-11-12
4 58 メイショウドトウ 9.2133 和多田美咲 2033-12-31
> tib %>% select(name, seiyu) %>% as.data.frame()
name seiyu
1 ウオッカ 大橋彩香
2 ライスシャワー 石見舞菜香
3 スーパークリーク 優木かな
4 メイショウドトウ 和多田美咲
> tib %>% select(name:seiyu) %>% as.data.frame()
name prizemoney seiyu
1 ウオッカ 13.0487 大橋彩香
2 ライスシャワー 6.6686 石見舞菜香
3 スーパークリーク 5.5610 優木かな
4 メイショウドトウ 9.2133 和多田美咲
> tib %>% select(2, 4) %>% as.data.frame()
name seiyu
1 ウオッカ 大橋彩香
2 ライスシャワー 石見舞菜香
3 スーパークリーク 優木かな
4 メイショウドトウ 和多田美咲
> tib %>% select(2:4) %>% as.data.frame()
name prizemoney seiyu
1 ウオッカ 13.0487 大橋彩香
2 ライスシャワー 6.6686 石見舞菜香
3 スーパークリーク 5.5610 優木かな
4 メイショウドトウ 9.2133 和多田美咲
> tib %>% select(-(no:prizemoney), -dummydate) %>% as.data.frame()
seiyu
1 大橋彩香
2 石見舞菜香
3 優木かな
4 和多田美咲
> tib %>% select(-(1:3), -5) %>% as.data.frame()
seiyu
1 大橋彩香
2 石見舞菜香
3 優木かな
4 和多田美咲
> tib %>% select(name, cv = seiyu) %>% as.data.frame()
name cv
1 ウオッカ 大橋彩香
2 ライスシャワー 石見舞菜香
3 スーパークリーク 優木かな
4 メイショウドトウ 和多田美咲

« [R]ヌル(0x00)を含むテキストファイルを高速に読み込む | トップページ | [R]SQLiteを使う »

R(tidyverse)」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

« [R]ヌル(0x00)を含むテキストファイルを高速に読み込む | トップページ | [R]SQLiteを使う »

無料ブログはココログ

■■

■■■