Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7846027
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 2, 20262026-06-02T17:26:34+00:00 2026-06-02T17:26:34+00:00

I have the following data which is a timeseries of data points (see dput()

  • 0

I have the following data which is a timeseries of data points (see dput() output below for reproducible series).

                    data
2012-03-13  0.0099809886
2012-03-14 -0.0011633318
2012-03-15  0.0021057557
2012-03-16 -0.0039516504
2012-03-19 -0.0006950880
2012-03-20 -0.0064935065
2012-03-21 -0.0016389604
2012-03-22  0.0089264740
2012-03-23  0.0061047194
2012-03-26 -0.0032664489
2012-03-27  0.0016199954
2012-03-28  0.0123198512
2012-03-29 -0.0018399264
2012-03-30  0.0013828071
2012-04-02 -0.0134335155
2012-04-03 -0.0038999771
2012-04-04  0.0057816836
2012-04-05  0.0041695622
2012-04-10  0.0039627040
2012-04-11 -0.0007045561
2012-04-12  0.0063261481
2012-04-13  0.0030106531
2012-04-16  0.0004650081
2012-04-17 -0.0057924004
2012-04-18  0.0055337791
2012-04-19  0.0009157509
2012-04-20 -0.0004576659
2012-04-23 -0.0038857143
2012-04-24  0.0029960820
2012-04-26 -0.0074779062

I’d like to try and get a timeseries of an n-period rolling quantile.

For example, to get the upper quartile of the entire series is simply:

> quantile(se,.75)
    75% 
0.004117848

But what I want is to effectively add data$rolling_quantile so that I can have a rolling n-period window of what constitutes the

I would have thought apply.rolling (in Performance Analytics) or roll.apply (in zoo) would do the the trick but I get the follwing error when trying to calculate the 10-day rolling upper quartile:

> rolling_quantile <- apply.rolling(data,width=10,FUN="quantile",.75)

Error in xts(calcs[-1], order.by = dates[steps]) : 
  NROW(x) must match length(order.by)

tracback doesn’t give much clue either:

> traceback()
3: stop("NROW(x) must match length(order.by)")
2: xts(calcs[-1], order.by = dates[steps])
1: apply.rolling(data, width = 10, FUN = "quantile", 0.75)

roll.apply seems to work, but it seems to chop more data than expected at the head and tail of data. I will post that call as an update if necessary, but I figure apply.rolling is the appropriate solution in any event.

Doing this in excel is dead simple, of course, but I’d like to get the answer in R. But as a guide to the solution, this is the result I’d like to get (as generated in Excel):

              data          rolling_qt
3/13/2012   0.009980989 
3/14/2012   -0.001163332    
3/15/2012   0.002105756 
3/16/2012   -0.00395165 
3/19/2012   -0.000695088    
3/20/2012   -0.006493506    
3/21/2012   -0.00163896 
3/22/2012   0.008926474 
3/23/2012   0.006104719 
3/26/2012   -0.003266449    0.005104978
3/27/2012   0.001619995 0.001984316
3/28/2012   0.012319851 0.005104978
3/29/2012   -0.001839926    0.004983538
3/30/2012   0.001382807 0.004983538
4/2/2012    -0.013433515    0.004983538
4/3/2012    -0.003899977    0.004983538
4/4/2012    0.005781684 0.00602396
4/5/2012    0.004169562 0.005378653
4/10/2012   0.003962704 0.004117848
4/11/2012   -0.000704556    0.004117848
4/12/2012   0.006326148 0.005378653
4/13/2012   0.003010653 0.004117848
4/16/2012   0.000465008 0.004117848
4/17/2012   -0.0057924  0.004117848
4/18/2012   0.005533779 0.005192725
4/19/2012   0.000915751 0.005192725
4/20/2012   -0.000457666    0.004117848
4/23/2012   -0.003885714    0.003724691
4/24/2012   0.002996082 0.00300701
4/26/2012   -0.007477906    0.00300701

Any help, as ever, very much appreciated.

> dput(se)
    structure(c(0.00998098859315588, -0.00116333178222428, 0.00210575573233496, 
    -0.00395165039516499, -0.000695088044485592, -0.00649350649350644, 
    -0.00163896043081246, 0.00892647404275304, 0.00610471941770374, 
    -0.00326644890340644, 0.00161999537144175, 0.0123198512319851, 
    -0.00183992640294384, 0.00138280709840988, -0.0134335154826958, 
    -0.0038999770589585, 0.00578168362627207, 0.00416956219596942, 
    0.00396270396270393, -0.000704556129638378, 0.00632614807872534, 
    0.00301065308012971, 0.000465008137642497, -0.0057924003707136, 
    0.00553377910998387, 0.000915750915750912, -0.000457665903890181, 
    -0.00388571428571427, 0.00299608204655444, -0.00747790618626787
    ), .indexCLASS = "Date", .indexTZ = "", na.action = structure(c(5L, 
    6L, 10L, 14L, 17L, 19L, 20L, 21L, 22L, 24L, 25L, 26L, 27L, 28L, 
    29L, 30L, 31L, 32L, 33L, 34L, 35L, 36L, 37L, 38L, 39L, 40L, 41L, 
    42L, 43L, 44L, 47L, 49L, 51L, 54L, 55L, 56L, 57L, 58L, 59L, 60L, 
    61L, 62L, 63L, 64L, 65L, 66L, 68L, 69L, 70L, 71L, 72L, 73L, 74L, 
    75L, 76L, 77L, 78L, 79L, 80L, 82L, 83L, 84L, 85L, 86L, 87L, 88L, 
    89L, 90L, 91L, 92L, 93L, 94L, 95L, 96L, 98L, 99L, 100L, 101L, 
    102L, 103L, 104L, 105L, 106L, 107L, 108L, 109L, 110L, 112L, 113L, 
    114L, 115L, 116L, 118L, 119L, 120L, 121L, 122L, 123L, 124L, 125L, 
    126L, 127L, 128L, 129L, 132L, 133L, 135L, 136L, 137L, 138L, 139L, 
    140L, 141L, 142L, 143L, 144L, 145L, 146L, 147L, 148L, 149L, 150L, 
    151L, 152L, 153L, 154L, 155L, 156L, 157L, 158L, 159L, 160L, 161L, 
    162L, 163L, 164L, 165L, 166L, 167L, 168L, 169L, 170L, 171L, 172L, 
    245L, 252L, 285L, 426L, 448L, 509L, 686L, 704L, 796L, 942L, 959L, 
    1057L, 1257L, 1311L, 1531L, 1565L, 1726L, 1787L, 1820L, 1982L, 
    2032L, 2044L, 2045L, 2075L, 2076L, 2218L, 2221L, 2237L, 2238L, 
    2330L, 2493L, 2555L, 2590L, 2749L, 2811L, 2845L, 3005L, 3067L
    ), class = "omit", index = c(957708000, 957794400, 958312800, 
    958658400, 959090400, 959263200, 959522400, 959608800, 959695200, 
    959868000, 960127200, 960213600, 960300000, 960386400, 960472800, 
    960732000, 960818400, 960904800, 960991200, 961077600, 961336800, 
    961423200, 961509600, 961596000, 961682400, 961941600, 962028000, 
    962114400, 962200800, 962287200, 962719200, 962892000, 963237600, 
    963496800, 963756000, 963842400, 963928800, 964015200, 964101600, 
    964360800, 964447200, 964533600, 964620000, 964706400, 964965600, 
    965052000, 965224800, 965311200, 965570400, 965656800, 965743200, 
    965829600, 965916000, 966175200, 966261600, 966348000, 966434400, 
    966520800, 966780000, 966952800, 967039200, 967125600, 967381200, 
    967467600, 967554000, 967640400, 967726800, 967986000, 968072400, 
    968158800, 968245200, 968331600, 968590800, 968677200, 968850000, 
    968936400, 969195600, 969282000, 969368400, 969454800, 969541200, 
    969800400, 969886800, 969973200, 970059600, 970146000, 970405200, 
    970578000, 970664400, 970750800, 971010000, 971096400, 971269200, 
    971355600, 971614800, 971701200, 971787600, 971874000, 971960400, 
    972219600, 972306000, 972392400, 972478800, 972565200, 972997200, 
    973083600, 973429200, 973515600, 973602000, 973688400, 973774800, 
    974034000, 974120400, 974206800, 974293200, 974379600, 974638800, 
    974725200, 974811600, 974898000, 974984400, 975243600, 975330000, 
    975416400, 975502800, 975589200, 975848400, 975934800, 976021200, 
    976107600, 976194000, 976453200, 976539600, 976626000, 976712400, 
    976798800, 977058000, 977144400, 977230800, 977317200, 977403600, 
    977835600, 977922000, 978008400, 987343200, 988120800, 992181600, 
    1009285200, 1012136400, 1019656800, 1041339600, 1043586000, 1055080800, 
    1072875600, 1075035600, 1087135200, 1111932000, 1118584800, 1145887200, 
    1150034400, 1169730000, 1177423200, 1181484000, 1201438800, 1207663200, 
    1209045600, 1209304800, 1212933600, 1213020000, 1230469200, 1230814800, 
    1232888400, 1232974800, 1244383200, 1264424400, 1272204000, 1276437600, 
    1295960400, 1303740000, 1307887200, 1327496400, 1335276000)), index = structure(c(1331557200, 
    1331643600, 1331730000, 1331816400, 1332075600, 1332162000, 1332248400, 
    1332334800, 1332421200, 1332680400, 1332766800, 1332853200, 1332939600, 
    1333026000, 1333288800, 1333375200, 1333461600, 1333548000, 1333980000, 
    1334066400, 1334152800, 1334239200, 1334498400, 1334584800, 1334671200, 
    1334757600, 1334844000, 1335103200, 1335189600, 1335362400), tzone = "", tclass = "Date"), .Dim = c(30L, 
    1L), .Dimnames = list(NULL, "data"), class = c("xts", "zoo"))
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-02T17:26:35+00:00Added an answer on June 2, 2026 at 5:26 pm

    I think it is just parameter confusion. This works:

    rollapply(x, width = 10, FUN = "quantile", p = .75)
    

    I.e. name the parameter you want passing to the quantile function.

    BTW, I get the same output as your Excel sample, but the days are off by 1. If that matters then this will adjust it to match:

    res <- rollapply(x, width = 10, FUN = "quantile", p = .75)
    index(res) <- index(res) + 1
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a C# MVC application which I need to output the following data
I have to build a tree using the following data which comes from a
I have data which resembles the following: D.STEIN,DS,01,ALTRES,TTTTTTFFTT D.STEIN,DS,01,APCASH,TTTTTTFFTT D.STEIN,DS,01,APINH,TTTTTTFFTT D.STEIN,DS,01,APINV,TTTTTTFFTT D.STEIN,DS,01,APMISC,TTTTTTFFTT D.STEIN,DS,01,APPCHK,TTTTTTFFTT D.STEIN,DS,01,APWLNK,TTTTTTFFTT
I have data which resembles the following: D.STEIN,DS,01,ALTRES,TTTTTTFFTT D.STEIN,DS,01,APCASH,TTTTTTFFTT D.STEIN,DS,01,APINH,TTTTTTFFTT D.STEIN,DS,01,APINV,TTTTTTFFTT D.STEIN,DS,01,APMISC,TTTTTTFFTT D.STEIN,DS,01,APPCHK,TTTTTTFFTT D.STEIN,DS,01,APWLNK,TTTTTTFFTT
I have a textarea in which the user enters the following data: Paul:Nine, Rome
I have following requirement, I have C#/.Net console application, which refers to 'System.Data.Sqlite.dll' 'System.Data.Sqlite.dll'
I have the following code which definitely returns a proper data result if I
I have the following LINQ Select which does not work. Data.Select(d => d.Value.IsDirty =
I have the following code, which compiles but doesn't bring back any data. Here
I have a txt file which contains data in the following format: X1 Y1

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.