gpt4 book ai didi

即使设置了 rm(df),R 循环也会消耗 5GB 的 RAM

转载 作者:行者123 更新时间:2023-12-04 10:29:18 26 4
gpt4 key购买 nike

我有一个循环来进行 API 调用并用数据编写一个 CSV 文件。

将其写入本地磁盘后,我已经设置了 rm(df)。它开始很酷,但在 10 次或更多次调用 RAM 后,PC 通常开始非常努力地减速。

Windows 任务管理器说 RStudio 正在使用 5GB 的 RAM(我的 PC 总共是 8RM)。

如果我在将 df 写入本地磁盘后删除它,为什么会发生这种情况?

library(googleAuthR)
library(googleAnalyticsR)
library(tidyverse)

my_dates <- seq(as.Date("2019-10-25"), as.Date("2019-12-31"), by = 1)


my_fetch <- function(ga_id, d) {



df <- google_analytics(ga_id,
date_range = c(d, d),
metrics = c("totalEvents"),
dimensions = c("ga:date", "ga:eventCategory",
"ga:eventAction", "ga:eventLabel"),
anti_sample = TRUE)



filename <- paste0("tvgo-web", "-", d, ".csv")
print(filename)
write.csv(df, filename, row.names = FALSE)
rm(df)
gc()

}



my_fetches_fetches <- mapply(my_fetch, myviewID, my_dates, SIMPLIFY = FALSE)

每个 CSV 格式的 API 调用为 12 MB。它有:
dim(df)
[1] 135410 5

最佳答案

正如@G5W 在评论中发布的那样,gc()之后 rm(df)将释放内存。

关于即使设置了 rm(df),R 循环也会消耗 5GB 的 RAM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60479466/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com