#r #ggplot2 #filter #bar-chart #dplyr
#r #ggplot2 #Фильтр #гистограмма #dplyr
Вопрос:
Я хотел бы знать, как я могу объединить свои таблицы для создания одного столбчатого графика. Сначала я изменил и создал новые столбцы… но ответы ИСТИННЫ ИЛИ ЛОЖНЫ
master1 <- master %>%
mutate(underweight = BMI < 18.5,
normal = between(BMI, 18.5, 24.9),
overweight = between(BMI, 25, 29.9),
obese = between(BMI, 30, 34.9),
extreme = BMI > 35)
поскольку я не знал, как создать из этой таблицы столбчатый график, я разделил их на новые таблицы:
t.underweight<-master1 %>%
filter(Income>0,underweight==TRUE) %>%
select(Income,underweight)
t.normal<-master1%>%
filter(Income>0,normal==TRUE)%>%
select(Income,normal)
t.overweight<-master1%>%
filter(Income>0,overweight==TRUE)%>%
select(Income,overweight)
t.obese<-master1%>%
filter(Income>0,obese==TRUE)%>%
select(Income,obese)
t.extreme<-master1%>%
filter(Income>0,extreme==TRUE)%>%
select(Income,extreme)
может быть, есть более простой способ направить после изменения, если да, я был бы признателен, если бы узнал, как это сделать. если нет, то как я могу просто объединить эту таблицу для создания столбчатого графика?
моей второй переменной будет » Доход» … по оси y
Ответ №1:
library(tidyverse)
set.seed(1)
bmi <- runif(100, 10, 50)
income <- rnorm(100, 400, 10)
id <- 1:100
df <- data.frame(id = id, bmi = bmi, income = icnome)
res <- df %>%
mutate(BMI_cat = cut(
x = bmi,
breaks = c(0, 18.5, 25, 30, 35, Inf),
labels = c("underweight", "normal", "overweight", "obese", "extreme"),
ordered_result = T
))
ggplot(res, aes(income))
geom_histogram(bins = 10)
facet_wrap(~BMI_cat, scales = "fixed")
Комментарии:
1. Здравствуйте, Юрий, спасибо за вашу помощь.. Я как бы ищу что-то вроде этого…
2. Отлично! Если вы считаете, что этот ответ был полезен для вас, вы можете принять его, нажав на галочку в левой части этого ответа 🙂
3. Да, конечно .. еще один вопрос, но как это возможно, когда ответы похожи на TRUE и FALSE?
t.extreme<-master1%>% filter(Income>0,extreme==TRUE)%>% select(Income,extreme) > head(t.extreme) Income extreme 1 21600 TRUE 2 4000 TRUE 3 12720 TRUE 4 26772 TRUE