根据上一行中的日期将行添加到数据框中

用户3791234

我有一个数据框precip_range

start_date<-as.Date(c("2010-4-01", "2010-4-02", "2010-04-04", "2010-07-02", "2010-07-02", "2010-07-03"))  
end_date<-as.Date(c("2010-7-01", "2010-07-01", "2010-07-02", "2010-10-03", "2010-10-04", "2010-10-03"))
date_category<-(c("A", "A", "A", "B", "B", "B"))
site <-c("Site 1", "Site 2", "Site 3", "Site 1", "Site 2", "Site 3")
precip_range<-data.frame(site, start_date, end_date, date_category)
precip_range$days <-(end_date-start_date)

我想增加一列Date用的值,并添加行Date,填补在日期间的间隙start_dateend_date通过site除以外的所有列Date均应保留与中相同的信息precip_range我希望结果数据框的前几行看起来类似于数据框result_example

date<-as.Date(c("2010-04-01", "2010-04-02", "2010-04-03", "2010-04-04", "2010-04-05", "2010-04-06"))
result_date_category <-c("A", "A", "A", "A", "A", "A")
result_site <-c("Site 1", "Site 1", "Site 1", "Site 1", "Site 1", "Site 1")
result_start_date <-as.Date(c("2010-04-01", "2010-04-01", "2010-04-01", "2010-04-01", "2010-04-01","2010-04-01"))
result_end_date <-as.Date(c("2010-07-01", "2010-07-01", "2010-07-01", "2010-07-01", "2010-07-01","2010-07-01"))
result_example <-data.frame(date, result_site, result_start_date, result_end_date, result_date_category)
result_example$days <-(result_end_date-result_start_date)

我的问题类似于[在R中:将具有前一行数据的行添加到数据框中,但是我无法针对我的情况成功调整该答案。谢谢你。

大卫·阿伦堡

尝试以下

diffs <- with(precip_range, end_date - start_date + 1)
result_site <- precip_range[rep(seq_len(nrow(precip_range)), diffs), ]

library(data.table)
setDT(result_site)[, Date := seq.int(start_date[1], end_date[1], by = "day"), 
                     by = list(site, date_category)]
result_site

#        site start_date   end_date date_category    days       Date
#   1: Site 1 2010-04-01 2010-07-01             A 91 days 2010-04-01
#   2: Site 1 2010-04-01 2010-07-01             A 91 days 2010-04-02
#   3: Site 1 2010-04-01 2010-07-01             A 91 days 2010-04-03
#   4: Site 1 2010-04-01 2010-07-01             A 91 days 2010-04-04
#   5: Site 1 2010-04-01 2010-07-01             A 91 days 2010-04-05
# ---                                                              
# 551: Site 3 2010-07-03 2010-10-03             B 92 days 2010-09-29
# 552: Site 3 2010-07-03 2010-10-03             B 92 days 2010-09-30
# 553: Site 3 2010-07-03 2010-10-03             B 92 days 2010-10-01
# 554: Site 3 2010-07-03 2010-10-03             B 92 days 2010-10-02
# 555: Site 3 2010-07-03 2010-10-03             B 92 days 2010-10-03

在这里,我们计算日期差并根据每个差的大小执行行索引之后,我们使用data.table软件包添加了日期差(以提高性能)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在保持每一列的类的同时将行添加到数据框中

来自分类Dev

如何将命名向量作为行添加到数据框中,并根据列名顺序重新排序?

来自分类Dev

Spark使用上一行的值将新列添加到数据框

来自分类Dev

将文本框动态添加到使用Mysql Jquery生成的每一行中的错误

来自分类Dev

根据上一行(R)的值删除数据框中的一行

来自分类Dev

将内容添加到每一行的开头,例如:: before在第一行中添加内容

来自分类Dev

根据另一行中另一列的值将列添加到数据框中

来自分类Dev

如何使用熊猫根据日期列和天数列将行添加到数据框

来自分类Dev

使用相同的主键将一行中的金额添加到另一行中的金额

来自分类Dev

根据R中前一行的条件将行添加到数据框

来自分类Dev

如何将数据框变量名移动到第一行并将新变量名添加到列表中的多个数据框?

来自分类Dev

根据列中的正则表达式语法,将变量添加到包含每一行最大值的数据框中

来自分类Dev

在R中:将具有年度日期间隔的行添加到数据框中

来自分类Dev

根据其他值将数据框中的值添加到行

来自分类Dev

大熊猫-根据多行中的值将汇总列数据的行添加到数据框中

来自分类Dev

如何使用熊猫将值添加到数据框的每一行?

来自分类Dev

Python将列表列表中的数据添加到数据框自己的一行中

来自分类Dev

如何将命名向量作为行添加到数据框中,并根据列名顺序重新排序?

来自分类Dev

数据表中的fnAddData()添加到同一行,而不是添加到新行

来自分类Dev

遍历文本文件中的每一行并添加到列表框

来自分类Dev

在选择的每一行上,将字符添加到Codemirror中的多行选择中

来自分类Dev

将列添加到pandas数据框中,其中包含每一行的最大值以及相应的列名

来自分类Dev

获取上一行中列的值,并添加到下一行中的下一列

来自分类Dev

将缺少的行从R中的其他数据框添加到数据框

来自分类Dev

根据特定的行值将列添加到数据框中(2)

来自分类Dev

我如何使用javascript将一行输入框添加到现有的html表单中

来自分类Dev

将前缀添加到 shell 中前一行的行中

来自分类Dev

Pandas:根据日期将另一行输入到数据框中

来自分类Dev

将列表添加到数据框中的每一行

Related 相关文章

  1. 1

    在保持每一列的类的同时将行添加到数据框中

  2. 2

    如何将命名向量作为行添加到数据框中,并根据列名顺序重新排序?

  3. 3

    Spark使用上一行的值将新列添加到数据框

  4. 4

    将文本框动态添加到使用Mysql Jquery生成的每一行中的错误

  5. 5

    根据上一行(R)的值删除数据框中的一行

  6. 6

    将内容添加到每一行的开头,例如:: before在第一行中添加内容

  7. 7

    根据另一行中另一列的值将列添加到数据框中

  8. 8

    如何使用熊猫根据日期列和天数列将行添加到数据框

  9. 9

    使用相同的主键将一行中的金额添加到另一行中的金额

  10. 10

    根据R中前一行的条件将行添加到数据框

  11. 11

    如何将数据框变量名移动到第一行并将新变量名添加到列表中的多个数据框?

  12. 12

    根据列中的正则表达式语法,将变量添加到包含每一行最大值的数据框中

  13. 13

    在R中:将具有年度日期间隔的行添加到数据框中

  14. 14

    根据其他值将数据框中的值添加到行

  15. 15

    大熊猫-根据多行中的值将汇总列数据的行添加到数据框中

  16. 16

    如何使用熊猫将值添加到数据框的每一行?

  17. 17

    Python将列表列表中的数据添加到数据框自己的一行中

  18. 18

    如何将命名向量作为行添加到数据框中,并根据列名顺序重新排序?

  19. 19

    数据表中的fnAddData()添加到同一行,而不是添加到新行

  20. 20

    遍历文本文件中的每一行并添加到列表框

  21. 21

    在选择的每一行上,将字符添加到Codemirror中的多行选择中

  22. 22

    将列添加到pandas数据框中,其中包含每一行的最大值以及相应的列名

  23. 23

    获取上一行中列的值,并添加到下一行中的下一列

  24. 24

    将缺少的行从R中的其他数据框添加到数据框

  25. 25

    根据特定的行值将列添加到数据框中(2)

  26. 26

    我如何使用javascript将一行输入框添加到现有的html表单中

  27. 27

    将前缀添加到 shell 中前一行的行中

  28. 28

    Pandas:根据日期将另一行输入到数据框中

  29. 29

    将列表添加到数据框中的每一行

热门标签

归档