R:複数のフィルターを使用して折れ線グラフをプロットする方法。(R-シャイニー/フレックスダッシュボード)

Nirav prajapati

R:複数のフィルターを使用して折れ線グラフをプロットする方法。(R-シャイニー/フレックスダッシュボード)。

合計数からの平均現在価値で折れ線グラフをプロットしたい。従業員が参加したイベントの数。

例:2019年1月の従業員Aの合計イベントは4であり、彼は1つしか存在しなかったため、その月の結果は25%と表示されます。((1/4)* 100)%

これがサンプルデータですが、実際には100人以上の従業員がいるため、結果は従業員名による線のカラーコードとして要求されるはずです。

次のようなデータセット:

Employee        Status          Month_Yr
A               PRESENT         01/2019
C               PRESENT         01/2019
B               PRESENT         01/2019
C               PRESENT         02/2019
D               PRESENT         03/2019
A               PRESENT         01/2019
B               PRESENT         03/2019
C               PRESENT         01/2019
B               ABSENT          01/2019
D               ABSENT          01/2019
A               ABSENT          01/2019
C               PRESENT         02/2019
B               PRESENT         01/2019
A               PRESENT         02/2019
A               ABSENT          02/2019
D               ABSENT          03/2019
C               PRESENT         01/2019
C               ABSENT          01/2019
C               ABSENT          01/2019
A               ABSENT          02/2019
C               ABSENT          04/2019
B               ABSENT          01/2019

私が試したコード:

sub_data5 <-mutate(sub_data5, ontime = ifelse(sub_data5$Status=="PRESENT","Y","N"))


sub_data5 <- sub_data5 %>% 
    count(year_month, Employee, ontime,year,Month) %>% 
    group_by(year_month, Employee,year,Month) %>% 
    mutate(Prop = (n/sum(n))*100)

sub_data5$`Prop`  <- as.integer(sub_data5$`Prop`)

ggplot(sub_data5, aes(x=year_month, y=Prop, group=Employee, color=Employee)) +
  geom_line()

しかし、year_month、Employee、year、Monthのフィルターを使用して折れ線グラフを表示したいと思います。

rpivottableでフィルターを取得するように、添付の画像を確認してください。

ここに画像の説明を入力してください

Nirav prajapati

このコードから私は私の結果を得ました。

# Calculate total count of status and add new column for its percentage value.
sub_data5 <- sub_data5 %>% 
    count(Month_yr, Employee, Status) %>% 
    group_by(Month_yr, Employee) %>% 
    mutate(Percent = (n/sum(n))*100)

# Convert Percentage decimal to string 
sub_data5$`Percent `  <- (as.integer(sub_data5$`Percent`)+" %")

# Drop row values with ABSENT
sub_data5<-sub_data5[!(sub_data5$Status=="ABSENT"),]

#Employee can't use in plot because it's used as grouping so convert DF in to new DF
sub_data10 <- as.data.frame(sub_data5)

# Plot line chart.
plo <- ggplot(data=sub_data10, aes(x=Month_yr, y=Precent, group=Employee, colour=Employee)) +
    geom_line() +
    geom_point()

fig <- ggplotly(plo)

fig

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ