我正在尝试为r中的单变量时间序列数据运行frame_calendar。当我尝试计算数据框的日历布局时,我收到以下错误。
mutate_impl(.data,dots)中的错误: 评估错误:找不到对象'72L'。
从类似的线程中,我看到评估错误:找不到对象''通常是用户在代码中输入的对象。但是,就我而言,我的代码中并没有提到任何'72L'。它也不在我的数据集中。能帮我解决一下如何解决这个错误吗?非常感谢任何帮助。
这是我数据的一部分。
Date_Time Time Date Year Month Mdate Day Hours_Time Hourly_Counts
1/1/2015 0:00 0:00:00 2015-01-01 2015 January 1 Thursday 1 72
1/1/2015 1:00 1:00:00 2015-01-01 2015 January 1 Thursday 2 48
1/1/2015 2:00 2:00:00 2015-01-01 2015 January 1 Thursday 3 53
1/1/2015 3:00 3:00:00 2015-01-01 2015 January 1 Thursday 4 84
1/1/2015 4:00 4:00:00 2015-01-01 2015 January 1 Thursday 5 68
这是我的代码。
newdata <- read.csv("D:/NEWDATA.csv")
attach(newdata)
View(newdata)
newdata[,3] <- as.Date(Date, origin = "1/1/2000")
attach(newdata)
View(newdata)
library(dplyr)
# compute the calendar layout for the data frame
calendar_df <- newdata %>%
filter(Year == 2015) %>%
frame_calendar(x = Time, y = Hourly_Counts, date = Date)
答案 0 :(得分:0)
这里的主要问题是,当你attach()
数据框首先掩盖你需要的一些对象时。通常,请勿使用attach
。如果您要使用附加数据集,请在调用with
时使用它,当然不要将其与dplyr
或其他tidyverse
函数结合使用。
使用干净的环境(不附加任何数据或名称空间),始终使用dplyr
方法,如下所示。除了不附加,请注意代码的其他两个更改。 (1)使用mutate
在Date
管道中设置dplyr
列。 (2)x = Hours_Time
,而不是Time
。如果您以前运行过attach(new_data)
,请先执行detach(new_data)
,直到您拥有干净的环境。 如果您多次运行,则需要多次detach
次。
library(dplyr)
library(sugrrants)
new_data %>%
mutate(Date = as.Date(Date, origin = "1/1/2000")) %>%
frame_calendar(x = Hours_Time, y = Hourly_Counts, date = Date)
# Date_Time Time Year Month Mdate Day Hours_Time Hourly_Counts Date
# 1 1/1/2015 0:00 0:00:00 2015 January 1 Thursday 1 72 2015-01-01
# 2 1/1/2015 1:00 1:00:00 2015 January 1 Thursday 2 48 2015-01-01
# 3 1/1/2015 2:00 2:00:00 2015 January 1 Thursday 3 53 2015-01-01
# 4 1/1/2015 3:00 3:00:00 2015 January 1 Thursday 4 84 2015-01-01
# 5 1/1/2015 4:00 4:00:00 2015 January 1 Thursday 5 68 2015-01-01
# .Hours_Time .Hourly_Counts
# 1 1.454167 0.6833333
# 2 1.691667 0.0500000
# 3 1.929167 0.1819444
# 4 2.166667 1.0000000
# 5 2.404167 0.5777778
数据:
new_data <- read.table(text = "Date_Time Time Date Year Month Mdate Day Hours_Time Hourly_Counts
'1/1/2015 0:00' 0:00:00 2015-01-01 2015 January 1 Thursday 1 72
'1/1/2015 1:00' 1:00:00 2015-01-01 2015 January 1 Thursday 2 48
'1/1/2015 2:00' 2:00:00 2015-01-01 2015 January 1 Thursday 3 53
'1/1/2015 3:00' 3:00:00 2015-01-01 2015 January 1 Thursday 4 84
'1/1/2015 4:00' 4:00:00 2015-01-01 2015 January 1 Thursday 5 68", header = TRUE, stringsAsFactors = FALSE)