我必须创建一个表格,其中每月的对数销售的平均值和中位数是从“ txhousing”数据集中列出的。我得到的练习如下:“下表显示了每月销售日志的均值和中位数,按均值排序”
我尝试过多次混合代码,但是我不知道为什么它会一直在我的桌子上给我NA。
library(tidyverse)
summary(txhousing)
na.omit(txhousing)
txhousing<- as.data.frame(txhousing)
logsales <- log(txhousing$sales)
group_by(txhousing, txhousing$month)
txhousing<- txhousing %>% mutate(logsales= log(txhousing$sales))
txhousing %>% group_by(txhousing$month) %>% summarise(mean(logsales), median(logsales)) %>% arrange(mean)
我希望得到一张具有每月对数销售平均值和中位数的表格,但是我得到的只是中位数中位数的列中的NA,而range给出以下错误:
错误:无法将“功能”类的列安排在位置1`
答案 0 :(得分:0)
列中有NA
个值,因此您需要告诉mean
和median
忽略它们。并在summarise
中命名列,以在名为arrange
的列上使用mean
。
txhousing %>%
group_by(txhousing$month) %>%
summarise(mean = mean(logsales, na.rm = T),
med= median(logsales, na.rm = T)) %>%
arrange(mean) %>%
rename(month = `txhousing$month`)
这将创建以下tibble
# A tibble: 12 x 3
month mean med
<int> <dbl> <dbl>
1 1 4.95 4.74
2 2 5.13 4.93
3 11 5.19 4.96
4 12 5.24 5.02
5 10 5.29 5.08
6 9 5.32 5.09
7 3 5.38 5.15
8 4 5.42 5.21
9 5 5.52 5.29
10 7 5.53 5.30
11 8 5.53 5.33
12 6 5.56 5.34