Hur minskar man antalet rader i kalkyblad automatiskt?

Elektronik- och mekanikrelaterad mjukvara/litteratur. (T.ex schema-CAD, simulering, böcker, manualer mm. OS-problem hör inte hit!)
nifelheim
Den första
Inlägg: 2318
Blev medlem: 27 mars 2008, 22:31:16
Ort: stockholm

Hur minskar man antalet rader i kalkyblad automatiskt?

Inlägg av nifelheim »

Finns det något enkelt sätt att minska antalet rader i ett kalkylark när jag ska plotta ett diagram?

Jag loggar mätvärden från ett batteripack varannan sekund för att kunna se detaljerat vad som händer vid uppladdning och urladdning.
Om jag vill plotta laddningsgraden i procent under ett dygn blir det väldigt många rader och "diagramguiden" blir otroligt seg.
Laddningsgraden ändras inte särskilt snabbt så det skulle gott och väl räcka att använda vart 30:e värde (1 gång / minut).

Min första tanke var ett skript som plockar ut värdena från hela minuter, är det "rätt väg"?

Eller finns det en färdig funktion som gör något liknande och vad skulle den heta?

Har försökt googla men har nog helt fel sökord för jag hittar ingen med liknande problem,
och jag känner mig övertygad om att jag inte är den första :-)
bobobo
Inlägg: 677
Blev medlem: 10 november 2007, 22:18:30
Ort: Kungsbacka

Re: Hur minskar man antalet rader i kalkyblad automatiskt?

Inlägg av bobobo »

Utöver segheten tror jag du får ett problem till: Om du plottar med streckad linje på en kurva, så kommer den ändå vara heldragen eftersom strecken alltid börjar och slutar vid varje datapunkt :)

På ett sommarjobb för 16 år sedan gjorde jag ett makro som precis som du är inne på reducerade datamängden så att diagrammet alltid innehöll något hundratal datapunkter. Jag upplevde det då som en bugg i excel, som jag var tvungen att bygga en work-around för, men så vitt jag vet har excel detta problemet än idag.
Tyvärr har jag inte makrot kvar.

OT: Excel är väldigt omständigt för att snabbt visa, undersöka och dra slutsatser av långa data från långa loggningar.
Någon som har tips på program där man kan öppna en csv-fil, enkelt välja vilka kolumner som ska plottas och sedan scrolla och zooma snabbt och obehindrat. Även välja enskilda och olika y-axlar m.m. Helst skulle excels kalkyl-funktioner finnas kvar så att man kan skapa kolumner med summor och produkter av andra kolumner osv.

Jag har försökt googla efter "data exploration" "interactive charting" och allt möjligt liknande och hittar massor av program men inget som passar mig för att utforska data från tidsbaserad loggning av tekniska variabler.
bearing
Inlägg: 11232
Blev medlem: 2 mars 2006, 01:01:45
Ort: Ängelholm

Re: Hur minskar man antalet rader i kalkyblad automatiskt?

Inlägg av bearing »

Jag har haft samma problem. Loggar batterispänningar varje sekund i en txt-fil. Även tiden loggas, i formatet "T,ss,mm,hh,dd". Jag har använt "find" (DOS-/Windows-versionen av grep, typ) för att sortera ut rader som innehåller "T,0,". På så sätt får jag bara 1/60-del av datan, vilken sparas i en ny fil, som jag sedan använder i Excel (Open Office Calc). Om det finns något enklare sätt direkt i Excel är jag också intresserad.
idiotdea
Inlägg: 467
Blev medlem: 26 juli 2006, 16:11:34
Ort: Vasa, Finland
Kontakt:

Re: Hur minskar man antalet rader i kalkyblad automatiskt?

Inlägg av idiotdea »

Jag brukar använda mig av modulo-funktionen för att vid behov reducera datamängden. Det är ett enkelt sätt att klara sig utan makron.

Ett exempel:
Säg att du har din data i A1:D10000, var första raden representerar "rubrikerna". Man börjar med att skriva in =MOD(ROW();10) i E2 och kopierar ner hela vägen (dubbelklicka nere i högra hörnet på cellen!). Kopiera sedan hela E:E och klistra in som värden (paste special / values) på samma ställe för att bli av med formlerna. Välj sedan "filter" (från data-fliken i Office 2010) och välj vilka rader du vill ha med från kolumn E. Vill du ta bort 1/10 av datan väljer du endast ett värde. Vill du ta bort 9/10 väljer du alla värden utom ett, o.s.v. Konstanten 10 i MOD ovan kan naturligtvis väljas fritt. När du har valt de rader (modulo 10) du vill ta bort, så markerar du alla dessa rader (måla från vänstra "balken") och väljer "delete row". Sedan är det bara att ta bort filtreringen och kolumn E.

Det kanske känns lite långt/invecklat, men man gör det på 30 sekunder, och fungerar "överallt" utan att man behöver ha sina makron med sig. Kompisen har ett makro som tar bort varannan rad i ett kalkylblad, och det är förstås också en annan gångbar väg. Kör makrot 4 ggr så har du kvar ~6% av datan.
Skriv svar