首页 > 解决方案 > 涂抹润滑包的湖人队数据集应用错误

问题描述

我正在尝试根据 lubridate 软件包的数据湖人队,分析 2008 年至 2009 年期间每位湖人队球员的得分,并展示每年的结果。

我正在尝试以下代码:

date <- lubridate :: lakers

date <- date %>%
  mutate (Year = str_sub (date, 1, 4))%>%
  filter (points> 0 & team == 'LAL')%>%
  select (Year, player, points)%>%
  group_by (Year, player)%>%
  summarise (Total_points = sum (points))%>%
  ungroup ()%>%
  spread (player, points)  

但它在传播中失败并出现以下错误:

Erro: Must extract column with a single valid subscript.
x Subscript `var` has the wrong type `function`.
ℹ It must be numeric or character.

我想知道问题是什么。我很感激任何帮助。

标签: rdplyrtidyversetidyrspread

解决方案


唯一的问题是你忘记了在总结时points你给了它的名字Total_points。你points在最后一行打电话。此错误表示未找到您的变量。只需更正最后一行中的变量名称即可:

date <- lubridate :: lakers

date <- date %>%
  mutate(Year = (str_sub(date, 1, 4))) %>%
  filter(points> 0 & team == 'LAL')%>%
  select(Year, player, points)%>%
  group_by(Year, player) %>%
  summarise(Total_points = sum(points))%>%
  ungroup()%>%
  spread(player, Total_points)

推荐阅读