Brian Barker <b.m.bar...@btinternet.com> wrote:
>At 09:26 20/01/2014 -0800, Hugo Borrell wrote:
>>I download big raw data containing that is supposed to show minute 
>>per minute quotation of an index (SP500). The problem is that some 
>>quotations have been included twice in the same minute (at some 
>>seconds of distance)
>>
>>I tried to clean that manually but it appears to be a huge work. I'd 
>>like to have a smarter way to ask calc to keep only one data of each 
>>minute time

>>
>>How could that be solved ?
>
>Let's imagine your values are in columns A to F.
>
>o I'm guessing that, if you need only one value per minute, you don't 
>need to know the seconds value of the timestamp.  In a spare column,
>enter
>=ROUNDDOWN(A5*24*60)/24/60

Would =FLOOR(A5,1/1440) accomplish the same thing and if so wouldn't it be more 
efficient?

> This will round your 
>timestamps to complete minutes.  Now copy this column and paste it 
>back over column A

Why? I would think that both columns could be retained thus eliminating a 
manual operation.

I would also think, Brian, that a pivot table involving this modified time and 
averaging the market quotes would replace your following steps but I may know 
too little about pivot tables. 

When collecting data I dislike copying and pasting (special or not). I 
especially dislike wiping out formulas. I am guessing that the original poster 
is somehow gathering the data automatically ("automagically") and it is being 
viewed in semi real time. How this is being accomplished I don't know.

>o At a convenient place, perhaps elsewhere on the sheet or on another 
>sheet, create a list of times containing only one value per 
>minute.  (I'm going to assume that these values are also in column A 
>starting at row n.)  To do this, enter the first two values manually 
>(here 2013-10-11 13:47:00 and 2013-10-11 13:48:00), select both, and 
>then fill them down the column as necessary.  Now all you need to do 
>is to harvest the appropriate values for subsequent columns.
>
>o In Bn, enter
>=VLOOKUP($An;$A$1:$F$999;COLUMN();0)
>(with the real row number in place of "n" and the real final row 
>number in place of "999", of course).  First fill this formula down 
>column B.  Then select all the relevant cells in column B (containing 
>this formula, as modified) and fill these across columns C to F.
>
>How does it work?  Then VLOOKUP() function searches the first column 
>of the range of original data for the first occurrence of the 
>appropriate timestamp.  When it finds a match, it copies the value 
>from the appropriate later column.  Using COLUMN() in place of an 
>explicit column number allows the formula to adjust automatically for 
>later columns.  (If your cleaned data are not in columns A to F, you 
>will need to modify this parameter to COLUMN()-1 or whatever.)  The 
>final parameter needs to be zero (or FALSE) to indicate that if there 
>is no value for that minute, you will (presumably) want to see an 
>error condition instead of a value unhelpfully harvested from a nearby
>minute.
>

-- 
Jim 


-- 
To unsubscribe e-mail to: users+unsubscr...@global.libreoffice.org
Problems? http://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/
Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette
List archive: http://listarchives.libreoffice.org/global/users/
All messages sent to this list will be publicly archived and cannot be deleted

Reply via email to