R是否在内存中保存了函数的对象?

时间:2015-08-06 15:33:25

标签: r memory memory-management

我有一个从MSSQL调用数据子集的函数,然后绘制直方图。数据集大约有100万条记录。

我想知道在显示图表后该函数是否将数据保存到内存中?

让我们说数据是200 MB,我有1000 MB的ram。

运行我的函数后,数据占用200 MB(剩余800 MB)还是返回1000 MB?

如果在运行后确实需要200 MB,那么如何在不耗尽所有记忆的情况下生成绘图。

我的功能:

echeckvscc <- function(year) {
  library(RODBC)
  library(ggplot2)
  myconn <- odbcConnect("SQLServer")
  query = paste("select * 
              from PaymentAnalysis 
              where statusdesc = 'Successful'
              and year = ", year, 
              "and PayMethodDesc2 in ('Credit Card','eCheck') 
              and TransType is not null 
              and TotTransAmt > 0")

  a <- ggplot(sqlQuery(myconn, query = query),aes(x = month, fill = PayMethodDesc2 ))
  a <- a + geom_histogram(position = "dodge", binwidth = .5, origin = -0.25) + 
    scale_x_continuous(breaks = 1:12)

  odbcClose(myconn)

  return(a)
}

谢谢

0 个答案:

没有答案