Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 在条形图中显示日期范围的频率_R_Date_Range_Bar Chart - Fatal编程技术网

R 在条形图中显示日期范围的频率

R 在条形图中显示日期范围的频率,r,date,range,bar-chart,R,Date,Range,Bar Chart,我有一个非常大的数据框架,由以下数据组成: PENR ANFDAT ENDDAT 1 1110 1990-02-01 1998-10-29 2 1981 1998-02-19 1998-02-20 3 6317 1994-11-01 1999-06-30 4 2039 1998-12-01 1999-04-30 (从这里获取) 对于df1$DATE中的每一行,计算df中具有ANFDAT>=DATE和ENDDAT的记录数。您可以在唯一日期上使用sapply来计算记录数 整个

我有一个非常大的数据框架,由以下数据组成:

  PENR     ANFDAT     ENDDAT
1 1110 1990-02-01 1998-10-29
2 1981 1998-02-19 1998-02-20
3 6317 1994-11-01 1999-06-30
4 2039 1998-12-01 1999-04-30
(从这里获取)


  • 对于
    df1$DATE
    中的每一行,计算
    df
    中具有
    ANFDAT>=DATE
    ENDDAT的记录数。您可以在唯一日期上使用
    sapply
    来计算记录数

    整个过程:

    DATE <- seq.int(min(df$ANFDAT), max(df$ENDDAT), by = "day")
    
    df1 <- data.frame(RECORDS = sapply(DATE, function(x)
                                    sum(df[["ANFDAT"]] <= x &  df[["ENDDAT"]] >= x)))
    
    rownames(df1) <- DATE
    barplot(df1$RECORDS)
    

    日期谢谢!看来我的问题确实有点误导。我会努力改进的!
    
    df1 <- data.frame(DATE = seq(min(df$ANFDAT), max(df$ENDDAT), by = "day"))
    
    df2 <- df1$RECORDS
    row.names(df2) <- df1$DATE
    barplot(df2$RECORDS)
    
    DATE <- seq.int(min(df$ANFDAT), max(df$ENDDAT), by = "day")
    
    df1 <- data.frame(RECORDS = sapply(DATE, function(x)
                                    sum(df[["ANFDAT"]] <= x &  df[["ENDDAT"]] >= x)))
    
    rownames(df1) <- DATE
    barplot(df1$RECORDS)