R 如何在绘制多个长方体图时使用x的特定离散值

R 如何在绘制多个长方体图时使用x的特定离散值,r,filter,boxplot,R,Filter,Boxplot,我试图为“alcagbi”列的“是”和“否”框图编码。 我得到的方框图表示是、否和n/a,我想删除n/a值 看起来像这样 sf36mcs: 4.45、21.4、34.9、14.3、74.1、66.4等是连续的 阿尔卡比:是的,是的,不适用,不适用,是的,不适用等等,所以是离散的 library(tidyverse) ggplot(data=WHS, mapping=aes(alcagbi, sf36mcs))+ geom_boxplot() 还有,我如何得到它,使y轴只显示正值 我是一

我试图为“alcagbi”列的“是”和“否”框图编码。 我得到的方框图表示是、否和n/a,我想删除n/a值

看起来像这样

sf36mcs: 4.45、21.4、34.9、14.3、74.1、66.4等是连续的

阿尔卡比:是的,是的,不适用,不适用,是的,不适用等等,所以是离散的

library(tidyverse)

ggplot(data=WHS, mapping=aes(alcagbi, sf36mcs))+
  geom_boxplot()

还有,我如何得到它,使y轴只显示正值

我是一名学生,仍在学习该软件,因此任何反馈都将不胜感激。谢谢

我们能行

library(dplyr)
library(ggplot2)
WHS %>%
   filter(alcagbi != "N/A") %>% 
   droplevels() %>%
   ggplot(mapping = aes(alcagbi, sf36mcs)) + geom_boxplot()
我们能做到

library(dplyr)
library(ggplot2)
WHS %>%
   filter(alcagbi != "N/A") %>% 
   droplevels() %>%
   ggplot(mapping = aes(alcagbi, sf36mcs)) + geom_boxplot()

Akrun过滤掉了N/A,所以我要借用代码,但过滤掉负数

library(dplyr)
library(ggplot2)
WHS %>%
    filter(alcagbi != "N/A",
           sf36mcs >= 0) %>% ###This is the addition
    droplevels() %>%
    ggplot(mapping = aes(alcagbi, sf36mcs)) + geom_boxplot()

如果要排除0,请使用>=a简单的>

Akrun过滤掉N/a,因此我将借用该代码,但要过滤掉负数

library(dplyr)
library(ggplot2)
WHS %>%
    filter(alcagbi != "N/A",
           sf36mcs >= 0) %>% ###This is the addition
    droplevels() %>%
    ggplot(mapping = aes(alcagbi, sf36mcs)) + geom_boxplot()

如果要排除0,请在读取数据时将>=设为一个简单的>

,您可以在
read.csv/read.table
中使用
na.strings=“N/a”
,然后在该筛选器之后使用
WHS%>%筛选器(!is.na(alcagbi))
。如果已经读取,则
WHS%>%filter(alcagbi!=“N/A”)%%>%droplevels()%%>%ggplot(mapping=aes(alcagbi,sf36mcs))+geom_boxplot()
读取数据时,可以在
read.csv/read.table
中使用
na.strings=“N/A”
,然后在该过滤器
WHS%>%filter(!is.na(alcagbi))
。如果已经读取,则
WHS%>%过滤器(alcagbi!=“N/A”)%%>%droplevels()%%>%ggplot(mapping=aes(alcagbi,sf36mcs))+geom_boxplot()
成功,谢谢!你知道我如何过滤y轴上的SF36MC,使其仅在绘图上显示大于0的值吗?是的,这很有效,谢谢!您知道如何在y轴上过滤SF36MC,使其仅在绘图上显示大于0的值吗?