【R】ユニーク数(項目の種類)を数えるコード
ユニーク数(項目の種類)を数えるコード
Rの防備メモです。
下記のkaggleのメルカリコンペで使った、
カラムのユニーク数を数えるコードをメモります
library(tidyverse) library(data.table)#fread関数 train <- fread("train.tsv", sep = "\t") df_train <- as_data_frame(train) #カテゴリーを分類する。分類後のユニーク数を確認する df_train2 <- df_train %>% tidyr::separate(category_name,into=c("cate1","cate2","cate3","cate4"),sep="/") #uniqueを使う df_train2 %>% summarise(Num_cate1 = length(unique(cate1)),Num_cate2 = length(unique(cate2)),Num_cate3 = length(unique(cate3)),Num_cate4 = length(unique(cate4))) df_train2 %>% summarise_at(c("cate1","cate2","cate3","cate4"),function(x)length(unique(x))) df_train2 %>% select(starts_with("cate")) %>% summarise_all(function(x)length(unique(x))) #n_distinctを使う df_train2 %>% summarise(Num_case1 = n_distinct(cate1),Num_case2 = n_distinct(cate2),Num_case3 = n_distinct(cate3),Num_case4 = n_distinct(cate4))
他に良いやり方があったら教えてほしい。。