如何解决为什么maxdf $ date有效但df%>%selectdate%>%max给出错误?
我正在处理包含日期字段作为字符的covid数据。
我试图找到最长日期,并且我尝试使用dplyr命令给了我错误:
df %>% select(date) %>% max()
Error in FUN(X[[i]],...) : only defined on a data frame with all numeric variables
在max(df$date)
的情况下,它运行得很好,并给了我结果:[1] "2020-08-17"
。
我无法理解为什么会这样。这是数据等的代码:
library(flexdashboard)
library(tidyverse)
library(lubridate)
数据
df <- read.csv("https://raw.githubusercontent.com/RamiKrispin/coronavirus/master/csv/coronavirus.csv",stringsAsFactors = F)
head(df)
dim(df)
df %>% distinct(country)
typeof(df$date)
df %>% select(date) %>% max()
df %>% max(date)
max(df$date)
解决方法
我认为发生这种情况是因为使用select
时仍然有一个dataframe对象。如果要进行子集设置,以便仅使用带有dplyr的带日期变量的向量(如使用df$date
时所做的那样),则可以使用df %>% pull(date) %>% max()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。