R 变量是按0或1分类的-我如何使用它?
我正在使用许多不同的R课程使用的“泰坦尼克号”软件包。但这对我来说非常困难,因为一个人是否幸存取决于0(没有幸存)或1(幸存)。我试图创建一个基本的条形图,但似乎无法总结每个性别的1,或者任何其他变量R 变量是按0或1分类的-我如何使用它?,r,ggplot2,R,Ggplot2,我正在使用许多不同的R课程使用的“泰坦尼克号”软件包。但这对我来说非常困难,因为一个人是否幸存取决于0(没有幸存)或1(幸存)。我试图创建一个基本的条形图,但似乎无法总结每个性别的1,或者任何其他变量 library(tidyverse) install.packages('titanic') library(titanic) 只是一点点的转变: titanic <- titanic_train %>% + select(Survived, Pclass, Sex, Age
library(tidyverse)
install.packages('titanic')
library(titanic)
只是一点点的转变:
titanic <- titanic_train %>%
+ select(Survived, Pclass, Sex, Age, SibSp, Parch, Fare) %>%
+ mutate(Survived = factor(Survived),
+ Pclass = factor(Pclass),
+ Sex = factor(Sex))
我试图创建一个条形图:
ggplot(titanic, mapping = aes(Sex, Survived)) + geom_bar()
ggplot(titanic, mapping = aes(Sex, sum(Survived))) + geom_bar()
ggplot(titanic, mapping = aes(Sex, count(Survived))) + geom_bar()
有人能告诉我如何使用泰坦尼克号数据集中的“Surved”这样的变量吗?在绘制这样的图之前尝试总结一下。另外,
aes
是一个数值二进制变量,因此为了使用它,您可以在aes()
中将其转换为factor()
。您可以使用groupby()
和所需变量直接设置管道,然后使用summary()
。如果需要计数,可以使用n()
函数。这里是代码,我在这里使用了titanic\u train
dataset:
library(tidyverse)
library(titanic)
data("titanic_train")
#Code
titanic_train %>% group_by(Sex,Survived) %>% summarise(N = n()) %>%
ggplot(aes(Sex, N,fill=factor(Survived))) +
geom_bar(stat = 'identity')+
labs(fill='Survived')
输出:
或者,如果您希望每个类都有一个条形图,请尝试以下操作:
#Code 2
titanic_train %>% group_by(Sex,Survived) %>% summarise(N = n()) %>%
ggplot(aes(Sex, N,fill=factor(Survived))) +
geom_bar(stat = 'identity',position = position_dodge(0.9))+
labs(fill='Survived')
输出:
或者,如果要使用count()
可以绘制下一个代码:
#Code 3
titanic_train %>% count(Sex,Survived) %>%
ggplot(aes(Sex, n,fill=factor(Survived))) +
geom_bar(stat = 'identity',position = position_dodge(0.9))+
labs(fill='Survived')
输出:
在这样绘制之前,请尝试进行总结。另外,
aes
是一个数值二进制变量,因此为了使用它,您可以在aes()
中将其转换为factor()
。您可以使用groupby()
和所需变量直接设置管道,然后使用summary()
。如果需要计数,可以使用n()
函数。这里是代码,我在这里使用了titanic\u train
dataset:
library(tidyverse)
library(titanic)
data("titanic_train")
#Code
titanic_train %>% group_by(Sex,Survived) %>% summarise(N = n()) %>%
ggplot(aes(Sex, N,fill=factor(Survived))) +
geom_bar(stat = 'identity')+
labs(fill='Survived')
输出:
或者,如果您希望每个类都有一个条形图,请尝试以下操作:
#Code 2
titanic_train %>% group_by(Sex,Survived) %>% summarise(N = n()) %>%
ggplot(aes(Sex, N,fill=factor(Survived))) +
geom_bar(stat = 'identity',position = position_dodge(0.9))+
labs(fill='Survived')
输出:
或者,如果要使用count()
可以绘制下一个代码:
#Code 3
titanic_train %>% count(Sex,Survived) %>%
ggplot(aes(Sex, n,fill=factor(Survived))) +
geom_bar(stat = 'identity',position = position_dodge(0.9))+
labs(fill='Survived')
输出:
stat='identity'在geom_bar()中到底做了什么?@ReeNadeau这是一种基于变量中的值创建条形图的方法,您还可以定义其他方法,如
stat=count
,它将对值进行计数,而不是在数据框中显示它们!stat='identity'在geom_bar()中到底做了什么?@ReeNadeau这是一种基于变量中的值创建条形图的方法,您还可以定义其他方法,如stat=count
,它将对值进行计数,而不是在数据框中显示它们!