修改表以获得绝对频率和相对频率

问题描述 投票:1回答:2

我是R.的新人。我需要一些帮助。我想在表格中显示绝对频率和相对频率。

我得到了什么:

female   male 

314    577

[1] 891

[1] 0.352413

[1] 0.647587

我想要的是:空格不起作用所以我把它除以|

Sex | absolute Frequency | relative Frequency

male | 577 | 0.647587

female | 314 | 0.352413

码:

table(titanic$Sex)
length(titanic$Sex)
length(which(titanic$Sex == "female")) / length(titanic$Sex)
length(which(titanic$Sex == "male")) / length(titanic$Sex)
r statistics frequency absolute relative
2个回答
1
投票

希望这可以帮助!

library(dplyr)
library(titanic) 

df <- data.frame(table(titanic_train$Sex)) %>%
  mutate(Rel_Freq = Freq/sum(Freq)) %>%
  rename(Sex=Var1)
df

输出是:

     Sex Freq Rel_Freq
1 female  314 0.352413
2   male  577 0.647587

0
投票

这应该工作:

首先,计算女性和男性的数量,并将结果转换为data.frame

result <- as.data.frame(table(titanic$Sex))

其次,通过除以行数来计算相对频率,并将其添加到data.frame。

result$rel_freq <- result$Freq/nrow(titanic)

最后,您可以选择将列名更改为示例中的列名。

colnames(result) <- c('Sex',  'absolute Frequency', 'relative Frequency')

但也许有一种更奇特的方式?

© www.soinside.com 2019 - 2024. All rights reserved.