使用R的csv文件数据的回归数据分析

时间:2014-08-30 19:53:46

标签: r statistics

您好我在csv文件中有大量数据集,这些数据集在一天,几个月和几年内都有数千个服务器内存使用量。例如,

serverData <- read.csv("server_mem_usage.csv")
head(serverData)

它打印以下内容:

date,server,datatotal(GBs),dataused(GBs)
10 Jun 2014 17:00:50,server1,800,500
10 Jun 2014 19:00:50,server1,800,510
10 Jun 2014 18:00:50,server2,900,815
10 Jun 2014 19:50:50,server2,900,850

现在我想查找每个服务器的总数据和使用数据。对于例如在server1的情况下,总数据为800,并且对于两个日期使用的是500和510。

我不知道如果我创建ts()我如何分析它只需要一列我如何应用映射,这将说明给定服务器找到dataused和给定日期范围的数据总计。

我是R的新人请指导。提前谢谢。

1 个答案:

答案 0 :(得分:1)

我还不确定你需要什么,但也许是这样的?

library(data.table)
setDT(serverData)[, list(`datatotal(GBs)` = `datatotal(GBs)`[1],
                         `dataused(GBs)`= paste(`dataused(GBs)`, collapse = ", ")),
                  by = list(server)]

##     server datatotal(GBs) dataused(GBs)
## 1: server1            800      500, 510
## 2: server2            900      815, 850

因此,在私人聊天室进行一些讨论后,您似乎只需要每天至少达到其容量95%的服务器列表。一种方法是

library(data.table)
temp <- setDT(serverData)[, list(ServerReachedMaxCapacity = any(`dataused(GBs)` >= `datatotal(GBs)`[1]*.95)),
                  by = list(server, Date = as.POSIXct(date,  format = "%d %b %Y"))]
temp2 <- temp[ServerReachedMaxCapacity == T, list(servers = paste(server, collapse = ", ")), by = Date]