【问题标题】:Monthly average from daily data每日数据的月平均值
【发布时间】:2018-01-23 00:03:50
【问题描述】:

我有一个节能智能空调装置的数据集。每个单元都有一个 ID,每个单元都有代表每天节省的成本(以美元为单位)的每日数据。

我想创建一个条形图,显示每个单位每月平均节省的费用。然而,我真的很挣扎。 AVG([Elecsavingscost]) 只能让我获得给定月份的平均每日储蓄。 SUM([Elecsavingscost]) * 30 让我非常接近我想要的,但当然,并非所有月份都有 30 天。

有没有更智能的方法来做到这一点?我认为这是可能的......

【问题讨论】:

  • 如果你有 sum([ElectSavingsCost]) 并使用一个月级别的时间维度会发生什么?这应该可以满足您的需求,因为 sum() 函数可以在您在行和/或列中设置的任何粒度级别上工作。
  • 你能分享一个示例数据集吗?
  • 了解 Tableau 的 LOD 计算

标签: tableau-api


【解决方案1】:

使用 R 软件可以很容易地完成。以下是将每日数据转换为每月数据的代码

install.packages(c("zoo","hydroTSM")
library(zoo)
library(hydroTSM)

data=read.csv("data.csv")
data #data should contain 2 or more columns; 1st column should be date in 
#English (U.K.) format, 2nd and subsequent columns should be your daily data 

date    Elecsavingscost
01-01-1984  18.8
02-01-1984  20.2
03-01-1984  19
04-01-1984  19.6
05-01-1984  21.8
06-01-1984  21.5
.
.
.
25-12-2014  13.6
26-12-2014  13.6
27-12-2014  16.2
28-12-2014  18.2
29-12-2014  16.7
30-12-2014  19.4
31-12-2014  18.5

x1 <- zooreg(data$Elecsavingscost, start = as.Date("1984-01-01"))

## Daily to monthly conversion
Elecsavingscost_monthly<- daily2monthly(x1, FUN=sum, na.rm=TRUE)
write.csv(Elecsavingscost_monthly,"Elecsavingscost_monthly.csv") 

【讨论】:

    猜你喜欢
    • 2023-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-12
    相关资源
    最近更新 更多