lvl beginnerとlvl proの2つのグループに分類される10000人のユーザーがいるとします。ggplot2:2つのグループをメンバーの一部で比較する
すべてのユーザーは、1から20
にDFを行く、ランクがあります。
# beginers
n <- 7000
user.id <- 1:n
lvl <- "beginer"
rank <- sample(1:20, n, replace = TRUE,
prob = seq(.9,0.1,length.out = 20))
df.beginer <- data.frame(user.id, rank, lvl)
# pros
n <- 3000
user.id <- 1:n
lvl <- "pro"
rank <- sample(1:20, n, replace = TRUE,
prob = seq(.9,0.3,length.out = 20))
df.pro <- data.frame(user.id, rank, lvl)
library(dplyr)
df <- bind_rows(df.beginer, df.pro)
df2 <- tbl_df(df) %>% group_by(lvl, rank) %>% mutate(count = n())
問題1: 私は側で各基側を比較した棒グラフが必要ですが、与える代わり場合私は、各グループからのバーは同じ最大絶頂(100%)
私がこれまでに得たプロットを持っていますので、私は、パーセントを必要とし、カウント:
library(ggplot2)
plot <- ggplot(df2, aes(rank))
plot + geom_bar(aes(fill=lvl), position="dodge")
問題2:
私は各グループを比較したラインプロットを必要とするので、私たちは2行を持つことになりますが、代わりに私がカウントを与える場合、私はパーセントを必要とするので、各グループからの行があります同じ最大絶頂(100%)
私がこれまでに得たプロット:
plot + geom_line(aes(y=count, color=lvl))
問題3:
がランクは累積的であると言うことができますので、ランク3を持っているユーザは、ランク1及び2を有するランク20を持つユーザーは、1から20
に全てのランクを有しますプロットするときに、100%のユーザーがいるランク1からプロットを開始したい場合は、 ランク2はランク2よりもランク3が低くなります。
私はこれをすべてtableauで行いましたが、実際にはそれを嫌い、Rがこれらのすべてを処理できることを自分に示したいと思います。
ありがとうございました!
を利用します!ありがとうございました!!! – erickfis