首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用另一个表中的数据进行部分求和和计算

用另一个表中的数据进行部分求和和计算
EN

Stack Overflow用户
提问于 2018-12-17 13:01:43
回答 1查看 42关注 0票数 0

我的目标是使用两个不同的数据集对降水进行时间分解:

1)包含日、小时观测数据和一列降水观测值,2)另一组数据集包含日和降水信息。

首先,我想为第一个数据集创建一个新的列百分比,它将包含从列值到一天降雨量的比例分布。之后,我希望从其他数据集中获取相应的(根据日期)降水量和,并使用新创建的列百分比临时对其进行分解,并创建一个类似于NewValue的列。

我想自动做,因为我有3年的观察。

下面是我希望取得的成果的一个可复制的例子:

代码语言:javascript
运行
复制
dates = seq(as.POSIXct("2015-1-1 23:00"), as.POSIXct("2015-1-2 23:00"), by = "hour")
Value = c(0,0.15,0.1,0,0,0.3,0.4,0.5,0,0,0,0,0,0,0.6,0.1,0,0,0,0,0,0.3,0.5,0,0)
Percent = c(0,0.05,0.03,0,0,0.1,0.14,0.17,0,0,0,0,0,0,0.2,0.03,0,0,0,0,0,0.1,0.17,0,0)
NewValue = c(0,0.1,0.07,0,0,0.2,0.27,0.34,0,0,0,0,0,0,0.41,0.07,0,0,0,0,0,0.2,0.34,0,0)

DATA = data.frame(dates, Value, Percent, NewValue)

在上面的例子中,我把2015年的日降水量取为0,而另一天的降水量为2毫米。

EN

回答 1

Stack Overflow用户

发布于 2018-12-17 13:15:36

我不明白NewValue是如何计算的,yo没有给出输入数据集,所以我必须创建自己的数据。

代码语言:javascript
运行
复制
# hourly precip
d1 <- data.frame(dates=seq(as.POSIXct("2015-1-1 01:00"), 
                 as.POSIXct("2015-1-3 23:00"), by = "hour"), precip=runif(71))
# calc d2 : not needed in your case
d2 <- ddply(d1, .(day=as.Date(dates)), summarize, precipsum=sum(precip))

# calc relative precip
d1$day <- as.Date(d1$dates)
out <- merge(d1, d2, by='day')
out$Percent <- out$precip / out$precipsum
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53815806

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档