如何处理;下标越界“;函数内部的错误?在R

如何处理;下标越界“;函数内部的错误?在R,r,function,ggplot2,dataframe,R,Function,Ggplot2,Dataframe,我有一个这样的数据帧 Datetime <- c("2016-03-03 05:30:13", "2015-03-02 12:45:00", "2016-03-01 02:53:20", "2016-02-28 03:22:18", "2016-03-02 09:42:10", "2016-03-01 20:55:50", "2016-02-28 21:14:10", "2016-02-26 05:42:16", "2016-03-

我有一个这样的数据帧

Datetime <- c("2016-03-03 05:30:13", "2015-03-02 12:45:00", "2016-03-01 02:53:20", "2016-02-28 03:22:18", 
              "2016-03-02 09:42:10", "2016-03-01 20:55:50", "2016-02-28 21:14:10", "2016-02-26 05:42:16",
              "2016-03-02 08:31:15", "2016-03-02 09:13:10", "2016-03-01 00:45:14", "2016-02-26 05:56:00", 
              "2016-02-02 13:44:00", "2016-02-02 14:41:20", "2016-02-01 15:33:10", "2016-01-25 04:24:00",
              "2016-03-02 17:24:12", "2016-03-01 17:28:16", "2016-02-28 18:22:34", "2016-02-27 02:34:31")

ID <- c("A","A","A","A","B","B","B","B","C","C","C","C","D","D","D","D","E","E","E","E")
PT <- c(27,35,38,22,35,39,7,15,37,25,38,42,45,19,17,25,32,35,39,26)

df <- data.frame(Datetime,ID,PT)
df$Datetime <- as.POSIXct(df$Datetime,format="%Y-%m-%d %H:%M:%S")
Datetime也许

  plotdata <- subset(df2, ID == id)
  if(nrow(plotdata) == 0)
    next

plotdata测试
if(nrow(plotdata)<1)下一个
条件可以做什么。
summaryBy
从哪里来?我想获得唯一的ID,以便在函数中进行子集。我也可以用“独特”来获得。谢谢@Julius。我仍在学习R,从不知道“下一步”。谢谢你指出这一点。这看起来很简单,而且做起来很整洁。
plots <- function(a) { 
  if (nrow(a)>0) { 
    ggplot(data = a,aes(x=Datetime,y=PT)) + geom_line(size = 0.5) + geom_point(size=3) 
  } 
}

lss<-list()
plot_lss<-list()
UniqueID <- summaryBy(ID~ID, data = df, FUN = function(x) { c(n = length(x)) } )

for (j in 1:(nrow(UniqueID))) 
{ 
  cat(j) 
  id <- as.character(UniqueID$ID[[j]]) 

  df1 <- subset(df, ID == id)
  df2 <- subset(df1, df1$Datetime>Back2weeks & df1$Datetime<today)

  lss[[j]] <- df2

  plotdata <- subset(df2, ID == id)

  plot_lss[[j]] <- plots(plotdata)
  print(plot_lss[[j]])
  Sys.sleep(0)
}
  plotdata <- subset(df2, ID == id)
  if(nrow(plotdata) == 0)
    next