[英]How to use the purrr::map() in R
最近,我知道purrr
包中的map
函数确实非常强大,并试图找出在以下情况下如何使用它:
使用虹膜数据集并使用purrr::map
函数,分别为每个Species
(setosa,versicolor和virginica)分别计算所有变量Sepal.Length
, Sepal.Width
, Petal.Length
, Petal.Width
max
, mean
, min
。 然后将结果放入具有
Sepal.Length
max
, mean
, min
, Sepal.Length
, Sepal.Width
, Petal.Length
Petal.Width
。 有什么建议么? 我正在使用dplyr::mutate
,但是结果格式不是我想要的。
iris %>%
group_by(Species) %>%
summarise(MinSL=min(Sepal.Length),
MaxSL=max(Sepal.Length),
MeanSL=mean(Sepal.Length),
MinPL=min(Petal.Length),
MaxPL=max(Petal.Length),
MeanPL=mean(Petal.Length))
看看是否有使用dpylr
来完成任务的解决方案也很不错。 谢谢!
您不需要purrr。 尝试:
iris %>%
group_by(Species) %>%
summarise_at(vars(Sepal.Length, Sepal.Width, Petal.Length, Petal.Width),
c("min", "max", "mean"))
输出量
# A tibble: 3 x 13
Species Sepal.Length_min Sepal.Width_min Petal.Length_min Petal.Width_min
<fct> <dbl> <dbl> <dbl> <dbl>
1 setosa 4.30 2.30 1.00 0.100
2 versicolor 4.90 2.00 3.00 1.00
3 virginica 4.90 2.20 4.50 1.40
# ... with 8 more variables: Sepal.Length_max <dbl>, Sepal.Width_max <dbl>,
# Petal.Length_max <dbl>, Petal.Width_max <dbl>, Sepal.Length_mean <dbl>,
# Sepal.Width_mean <dbl>, Petal.Length_mean <dbl>, Petal.Width_mean <dbl>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.