私はこのデータフレームを持っています:
df <- data.frame(make = c("dodge", "dodge", "toyota", "ford", "dodge", "toyota","toyota","ford", "ford", "dodge"),
grn = c( 1, 1, NA, 1, NA, NA, 1, 1, NA, NA),
blu = c( NA, NA, 1, NA, 1, NA, NA, NA, 1, NA),
blk = c( NA, NA, NA, NA, NA, 1, NA, NA, NA, 1))
x軸に「make」、y軸に「make」カウントの合計を使用してプロットを作成し、色を使用して塗りつぶそうとしています。メーカーと色のカウントテーブルを作成する必要があると思いますが、その方法がわかりません。たとえば、テーブルは次のようになります。
DF <- read.table(text = "make grn blu blk
dodge 2 1 1
ford 2 1 0
toyota 1 1 1", header = TRUE)
その後、解決策は非常に簡単です
library(reshape2)
library(ggplot2)
DF1 <- melt(DF, id.var="make")
ggplot(DF1, aes(x = make, y = value, fill = variable)) +
geom_bar(stat = "identity")
では、データフレーム「df」を「DF」に変換するにはどうすればよいですか?
あなたが使用することができますdplyr::summarise_all
:
library(dplyr)
df %>% group_by(make) %>% summarise_all(sum, na.rm=TRUE)
# A tibble: 3 × 4
# make grn blu blk
# <fctr> <dbl> <dbl> <dbl>
#1 dodge 2 1 1
#2 ford 2 1 0
#3 toyota 1 1 1
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加