gpt4 book ai didi

r - 如何跨不同年份使用for循环并将多个地 block 放在一起?

转载 作者:行者123 更新时间:2023-12-04 15:31:11 25 4
gpt4 key购买 nike

https://www.kaggle.com/nowke9/ipldata ---- 包含数据集。

我是 R 编程的新手。这是对 IPL 数据集进行的探索性研究。 (上面附加数据的链接)在将两个文件与“id”和“match_id”合并后,我试图绘制不同城市的团队赢得的比赛之间的关系。

但是,由于 12 个赛季已经结束,我得到的输出无助于得出充分的结论。为了绘制每年的关系,需要使用 for 循环。现在,所有 12 年的输出都显示在一个图表中。

如何纠正这个错误并使用适当的配色方案为每年绘制单独的图表?

library(tidyverse)
matches_tbl <- read_csv("data/matches_updated.csv")
deliveries_tbl <- read_csv("data/deliveries_updated.csv")

combined_matches_deliveries_tbl <- deliveries_tbl %>%
left_join(matches_tbl, by = c("match_id" = "id"))

combined_matches_deliveries_tbl %>%
group_by(city, winner)%>%
filter(season == 2008:2019, !result == "no result")%>%
count(match_id)%>%
ungroup()%>%
ggplot(aes(x = winner))+
geom_bar(aes(fill = city),alpha = 0.5, color = "black", position = "stack")+
coord_flip()+
theme_bw()

输出如下:-

  There were 50 or more warnings (use warnings() to see the first 50)
[Winner of teams across cities for the years between 2008 and 2019][1]

所需的输出是:- 12 个单独的图形在一个代码中,具有适当的配色方案。提前谢谢了。

最佳答案

这是一个使用 mtcars 将变量拆分为单独绘图的示例。我创建的是 vsmpg 的散点图,方法是按 cyl 拆分数据集。首先创建一个空列表。然后我使用 lapply 循环遍历 cyl (4,6,8) 的值,然后按该值过滤数据。之后,我绘制子集的散点图并将其保存到空列表中。列表的每个部分都代表一个图,您可以根据需要将它们拉出。

library(dplyr)
library(ggplot2)
gglist <- list()

gglist <- lapply(c(4,6,8), function(x){

ggplot(filter(mtcars, cyl == x))+
geom_point(aes(x=vs,y=mpg))
})

关于r - 如何跨不同年份使用for循环并将多个地 block 放在一起?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61251511/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com