Vraag:
Excel als een werkbank voor statistieken
Carlos Accioly
2010-10-07 22:44:33 UTC
view on stackexchange narkive permalink

Het lijkt erop dat veel mensen (waaronder ikzelf) graag verkennende gegevensanalyse in Excel uitvoeren. Sommige beperkingen, zoals het aantal rijen dat is toegestaan ​​in een spreadsheet, zijn lastig, maar maken het in de meeste gevallen niet onmogelijk om Excel te gebruiken om met gegevens te spelen.

Een paper van McCullough en Heiser schreeuwt echter praktisch dat u uw resultaten helemaal verkeerd krijgt - en waarschijnlijk ook in de hel zult branden - als u Excel probeert te gebruiken.

Is dit document correct of is het het bevooroordeeld? De auteurs klinken alsof ze Microsoft haten.

Een recente analyse van de nauwkeurigheid van spreadsheetsoftware voor statistische berekeningen verschijnt in [Kellie B. Keeling en Robert J. Pavur (2011): Statistical Accuracy of Spreadsheet Software, The American Statistician, 65: 4, 265-273] (momenteel gratis te downloaden op http://amstat.tandfonline.com/doi/pdf/10.1198/tas.2011.09076). De resultaten zijn gemengd en misschien een beetje verrassend. Opvallend is de enorme verbetering in distributieberekeningen tussen Excel 2007 en Excel 2010 (die nauwkeuriger lijkt te zijn dan 'R' of SAS).
Acht antwoorden:
#1
+45
whuber
2010-10-08 01:15:28 UTC
view on stackexchange narkive permalink

Gebruik de juiste tool voor de juiste klus en maak gebruik van de sterke punten van de tools waarmee u vertrouwd bent.

In het geval van Excel zijn er enkele opvallende problemen:

  • Gebruik alstublieft geen spreadsheet om gegevens te beheren, zelfs niet als uw gegevens erin passen. Je vraagt ​​gewoon om problemen, vreselijke problemen. Er is vrijwel geen bescherming tegen typografische fouten, het op grote schaal door elkaar halen van gegevens, het afkappen van gegevenswaarden, enz., Enz.

  • Veel van de statistische functies zijn inderdaad defect. De distributie is er een van.

  • De standaardafbeeldingen zijn vreselijk.

  • Er ontbreken enkele fundamentele statistische afbeeldingen, vooral boxplots en histogrammen.

  • De generator van willekeurige getallen is een grap (maar is desondanks nog steeds effectief voor educatieve doeleinden).

  • Vermijd de functies op hoog niveau en de meeste invoegtoepassingen; ze zijn c ** p. Maar dit is slechts een algemeen principe van veilig computergebruik: als u niet zeker weet wat een functie doet, gebruik deze dan niet. Blijf bij de low-level-functies (waaronder rekenkundige functies, ranking, exp, ln, trig-functies en - binnen de limieten - de normale distributiefuncties). Gebruik nooit een invoegtoepassing die een afbeelding produceert: het wordt verschrikkelijk. (NB: het is doodeenvoudig om vanaf het begin uw eigen waarschijnlijkheidsgrafieken te maken. Ze zullen correct en in hoge mate aanpasbaar zijn.)

In zijn voordeel zijn echter de volgende:

  • De numerieke basisberekeningen zijn zo nauwkeurig als drijvers met dubbele precisie kunnen zijn. Ze bevatten enkele handige, zoals log gamma.

  • Het is vrij eenvoudig om een ​​besturingselement rond invoervakken in een spreadsheet te wikkelen, waardoor het mogelijk wordt om eenvoudig dynamische simulaties te maken.

  • Als u een berekening moet delen met niet-statistische mensen, zullen de meesten enige troost hebben met een spreadsheet en helemaal niet met statistische software, hoe goedkoop deze ook is.

  • Het is gemakkelijk om effectieve numerieke macro's te schrijven, inclusief het porten van oude Fortran-code, wat vrij dicht bij VBA ligt. Bovendien is de uitvoering van VBA redelijk snel. (Ik heb bijvoorbeeld code die niet-centrale t distributies vanaf nul nauwkeurig berekent en drie verschillende implementaties van Fast Fourier Transforms.)

  • Het ondersteunt een aantal effectieve simulaties en Monte-Carlo add-ons zoals Crystal Ball en @Risk. (Ze gebruiken trouwens hun eigen RNG's - ik heb het gecontroleerd.)

  • De directheid van directe interactie met (een kleine set) gegevens is ongeëvenaard: het is beter dan welke stats-pakket, Mathematica, etc. Bij gebruik als een gigantische rekenmachine met veel opslagruimte, komt een spreadsheet echt tot zijn recht.

  • Goed EDA, met robuuste en resistente methoden is niet eenvoudig, maar nadat je het eenmaal hebt gedaan, kun je het snel weer opzetten. Met Excel kun je effectief alle berekeningen reproduceren (hoewel slechts enkele van de plots) in het EDA-boek van Tukey, inclusief de mediaan van n-way-tabellen (hoewel het een beetje omslachtig is).

In direct antwoord op de oorspronkelijke vraag, is er een vertekening in dat artikel: het richt zich op het materiaal waar Excel het zwakst in is en dat een bekwame statisticus het minst waarschijnlijk zal gebruiken. Dat is echter geen kritiek op de krant, want dergelijke waarschuwingen moeten worden uitgezonden.

@whuber Een mooi en handig overzicht van voor- en nadelen!
+1 mooi en evenwichtig. Ik hou vooral van het punt over "directheid van directe interactie", waarvan ik denk dat het het grootste verkoopargument van Excel (of eigenlijk de spreadsheet) is. Declaratieve programmering voor de massa - wat verklaart waarom sommige mensen denken dat 80% van de zakelijke logica van de wereld in Excel is geschreven (de moeite waard om te wijzen op programmeurs en statistici die ruzie maken over R v SAS of Java v C ++, enz.).
Ik heb gehoord dat Microsoft enkele jaren geleden een aantal numerieke analisten heeft ingehuurd om de defecte functies in Excel te herstellen. Weet u of de problemen met Excel er nog zijn in de versies 2007 of 2010?
John, de paper van McCullough en Heiser waarnaar Carlos verwijst, gaat over Excel 2007. Ik zal Excel 2010 om verschillende redenen niet adopteren, dus ik heb niet de gelegenheid gehad om het te testen.
Heeft u een referentie of voorbeeld van hoe t-tests worden verbroken?
@Zach Gebruik bijvoorbeeld Excel 2002, bereken `= TINV (2 * p, df)` voor waarden van p variërend van 0,01 tot bijna 0 en vergelijk ze met de juiste waarden. (Ik controleerde met df variërend van 2 tot 32.) De fouten beginnen in het zesde significante cijfer en exploderen dan zodra p rond 1.E-5 of lager is. Hoewel deze waarden van p klein zijn, zijn het realistische waarden om te testen omdat ze cruciaal zijn voor tests met meervoudige vergelijkingen en voor het berekenen van waarden die verband houden met de t-verdeling, zoals de niet-centrale t.
Excel 2010 gebruikt Mersenne Twister voor RNG
@Curt Bedankt voor die info. Excel verbetert geleidelijk in sommige numerieke opzichten in de loop van de tijd. Ik had duidelijk moeten maken dat mijn opmerkingen zijn gebaseerd op ervaringen met versies van c. 1990 tot en met 2007, maar niets recenter dan dat.
@whuber De volgende whitepaper beschrijft enkele van de wijzigingen aan statistische functies van Excel 2010 - http: //blogs.office.com/cfs-file.ashx/__key/CommunityServer-Components-PostAttachments/00-00-00-49-53 /ExcelFunctie Verbeteringen-10_2D00_05_2D00_09-_2800_1_2900_.pdf
Ik denk dat je eerste opsommingsteken sterren en pijlen moet hebben die het uitroepen. Spreadsheets bieden geen audittrail, wat van cruciaal belang is als u van plan bent werk te doen waarop iemand daadwerkelijk vertrouwt. R biedt daarentegen niet direct een audittrail, maar aangezien het opdrachten accepteert en u de opdrachten kunt opslaan om te importeren, voorverwerken, verwerken, grafieken, enz., Kunt u in een apart bestand een spoor krijgen van wat u hebt gedaan om Haal Grafiek # 1 op, en je kunt het helemaal opnieuw maken, voor het geval je plotseling reden hebt om het in twijfel te trekken.
Leuk antwoord, zoals altijd, whuber. Re: directheid van directe interactie met gegevens, het is vermeldenswaard dat er ten minste één R GUI ([rkward] (http://rkward.sf.net/)) is, en waarschijnlijk meer die een spreadsheet-achtige interface hebben voor het beheren data, zonder de typefout / datatype problemen. Deze GUI's zijn niet zo goed in het rekenwerk van de "gigantische rekenmachine", waar spreadsheets, ik ben het mee eens, in uitblinken (au!).
Re @whuber's commentaar op `TINV` in Excel 2002: ik heb zojuist de` T.INV` functie van Excel 2010 vergeleken met `qt ()` in R 2.15.2 voor $ p \ in \ {0.1, 0.01, 0.001, \ dots , 1e-9 \} $ en $ df \ in \ {2, 3, \ dots, 32 \} $. De grootste relatieve fout is 4e-10. Dit probleem lijkt in Excel te zijn opgelost.
@JohnD.Cook: Het lijkt erop dat b.v.de t-test is nog steeds kapot: https://designdatadecisions.wordpress.com/2014/12/02/msexcel-for-statistical-analysis/
#2
+18
csgillespie
2010-10-08 07:35:37 UTC
view on stackexchange narkive permalink

Een interessant artikel over het gebruik van Excel in een bio-informatica-omgeving is:

Foutieve identificatoren: gennaamfouten kunnen onbedoeld worden geïntroduceerd bij het gebruik van Excel in bio-informatica, BMC Bioinformatics, 2004 ( link).

Deze korte paper beschrijft het probleem van automatische typeconversies in Excel (in het bijzonder datum en floating point conversies). De gennaam Sept2 wordt bijvoorbeeld omgezet in 2-Sept. U kunt deze fout zelfs vinden in online databases.

Excel gebruiken om middelgrote tot grote hoeveelheden gegevens te beheren is gevaarlijk. Fouten kunnen gemakkelijk binnensluipen zonder dat de gebruiker het merkt.

Dit is verreweg het aspect van Excel dat me het meest irriteert. Gegevensopslag vereist expliciete gegevenstypen, geen opmaak.
Eigenlijk is dit iets over MS-software in het algemeen dat me irriteert: het verandert je input in wat het denkt dat je het eigenlijk bedoelde, en je ziet het meestal niet eens gebeuren.
@csgillespie (+1) Goed om vanuit dit perspectief over Excel te horen!
Mijn favoriete fout deed zich voor toen Excel velden stilletjes afkapte tijdens het exporteren naar andere formaten. In een bestand met pesticidenconcentraties in de bodem converteerde het een waarde van 1.000.050 (buitengewoon giftig) naar 50 (bijna onbeduidend) door het eerste cijfer af te knippen!
@Matt is alleen irritant als u gegevens in Excel "opslaat". Het is een geweldige functie wanneer u Excel puur gebruikt als een front-end voor rapportage en het maken van grafieken.
+ oneindigheid. Ik doe aan bio-informatica en deze deed me een wereld van pijn. Gebeurt ook in openoffice.org.
#3
+11
Stephan Kolassa
2010-10-08 00:57:40 UTC
view on stackexchange narkive permalink

Nou, de vraag of het artikel correct of bevooroordeeld is, zou eenvoudig moeten zijn: je zou gewoon een aantal van hun analyses kunnen repliceren en kijken of je dezelfde antwoorden krijgt.

McCullough heeft verschillende versies van MS gebruikt Excel staat al een paar jaar uit elkaar, en blijkbaar vond MS het niet gepast om fouten op te lossen waar hij jaren geleden in eerdere versies op wees.

Ik zie geen probleem met spelen met gegevens in Excel. Maar om eerlijk te zijn, zou ik mijn "serieuze" analyses niet in Excel doen. Mijn grootste probleem zou geen onnauwkeurigheden zijn (waarvan ik vermoed dat dit maar zeer zelden een probleem zal zijn), maar de onmogelijkheid om mijn analyses een jaar later te volgen en te repliceren wanneer een recensent of mijn baas vraagt ​​waarom ik X niet heb gedaan - u kunt uw werk en je doodlopende steegjes in becommentarieerde R-code, maar niet op een zinvolle manier in Excel.

(+1) U sluit mooi aan bij de discussie op Medstats over de noodzaak om gegevens bij te houden en te analyseren (http://j.mp/dAyGGY)! Dankje.
Het opslaan van uw "werk en doodlopende steegjes" is niet moeilijker te doen met Excel dan met R. Het is gewoon een kwestie van het daadwerkelijk doen. Het grootste probleem met Excel heeft te maken met de kracht ervan: het is maar al te gemakkelijk om per ongeluk iets te veranderen. Maar voor EDA - de focus van het OP - bewaren we zelden of nooit alles wat we doen. EDA zou tenslotte * interactief moeten zijn. *
het is mogelijk om een ​​reproduceerbaar record van uw methoden bij te houden als u dit in VB doet, maar de GUI-focus van Excel moedigt dat gedrag niet aan.
#4
+7
chl
2010-10-07 23:15:35 UTC
view on stackexchange narkive permalink

Een vraag over het gebruik van Google-spreadsheets riep overigens tegenstrijdige (en dus interessante) meningen op, Gebruiken sommigen van jullie de Google Documenten-spreadsheet om je statistische werk uit te voeren en met anderen te delen?

Ik denk aan een ouder artikel dat niet zo pessimistisch leek, maar het wordt slechts marginaal aangehaald in het artikel dat u noemde: Keeling en Pavur, Een vergelijkende studie van de betrouwbaarheid van negen statistische software pakketten (CSDA 2007 51: 3811). Maar nu vond ik de jouwe op mijn harde schijf. Er was ook een speciale uitgave in 2008, zie speciale sectie over Microsoft Excel 2007, en meer recentelijk in de Journal of Statistical Software: On the Numerical Accuracy of Spreadsheets.

Ik denk dat het een langdurig debat is, en je zult verschillende papers / meningen vinden over de betrouwbaarheid van Excel voor statistische berekeningen. Ik denk dat er verschillende discussieniveaus zijn (wat voor soort analyse bent u van plan te doen, vertrouwt u op de interne oplosser, zijn er niet-lineaire termen die een bepaald model invoeren, enz.), En er kunnen bronnen van numerieke onnauwkeurigheid ontstaan als resultaat van juiste rekenfouten of ontwerpkeuzes problemen; dit wordt goed samengevat in

M. Altman, J. Gill & M.P. McDonald, Numerical Issues in Statistical Computing for the Social Scientist , Wiley, 2004.

Nu zijn er voor verkennende gegevensanalyse verschillende alternatieven die verbeterde visualisatiemogelijkheden bieden , multivariate en dynamische afbeeldingen, bijv GGobi - maar zie gerelateerde discussies op deze wiki.

Maar het eerste punt dat u maakte, lost duidelijk een ander probleem op (IMO), namelijk dat van het gebruik van een spreadsheet om grote dataset: het is simpelweg niet mogelijk om een ​​groot csv-bestand in Excel te importeren (ik denk aan genomische data, maar het is van toepassing op andere soorten hoog-dimensionale data). Het is niet voor dat doel gebouwd.

Ik hou van de nuance over 'verschillende discussieniveaus'.
#5
+7
Sympa
2010-10-08 02:36:52 UTC
view on stackexchange narkive permalink

De papers en andere deelnemers wijzen op technische zwakheden. Whuber doet goed werk door in ieder geval enkele van zijn sterke punten te schetsen. Persoonlijk doe ik uitgebreid statistisch werk in Excel (hypothesetesten, lineaire en meervoudige regressies) en ben er dol op. Ik gebruik Excel 2003 met een capaciteit van 256 kolommen en 65.000 rijen die ongeveer 100% van de gegevenssets die ik gebruik aankan. Ik begrijp dat Excel 2007 die capaciteit enorm heeft uitgebreid (rijen in de miljoenen).

Zoals Whuber vermeldt, dient Excel ook als een startplatform voor een groot aantal behoorlijk uitstekende invoegtoepassingen die allemaal behoorlijk krachtig en gemakkelijk te gebruiken. Ik denk aan Crystal Ball en @Risk voor Monte Carlo Simulation; XLStat voor krachtige statistieken en data-analyse; Wat is het beste voor optimalisatie. En de lijst gaat maar door. Het is alsof Excel het equivalent is van een iPod of IPad met een ontelbaar aantal behoorlijk ongelooflijke apps. Toegegeven, de Excel-apps zijn niet goedkoop. Maar voor wat ze kunnen, zijn het meestal behoorlijk goede koopjes.

Wat modeldocumentatie betreft, is het zo gemakkelijk om een ​​tekstvak in te voegen waarin je letterlijk een boek over je methodologie kunt schrijven , uw bronnen, enz ... U kunt ook opmerkingen in elke cel invoegen. Dus als er iets is, is Excel echt goed voor het vergemakkelijken van ingebedde documentatie.

Bedankt voor de extra punten en voor het delen van uw perspectief.
geweldige punten, goed om te horen dat iemand het op de juiste manier gebruikt en er baat bij heeft.
#6
+6
Zach
2011-05-08 07:32:10 UTC
view on stackexchange narkive permalink

Excel is niet goed voor statistieken, maar het kan geweldig zijn voor verkennende gegevensanalyse. Bekijk deze video voor een aantal bijzonder interessante technieken. Het vermogen van Excel om uw gegevens voorwaardelijk in te kleuren en staafdiagrammen in cellen toe te voegen, kan een goed inzicht geven in de structuur van uw onbewerkte gegevens.

#7
+6
Greg Snow
2011-05-08 08:01:17 UTC
view on stackexchange narkive permalink

Een andere goede referentiebron voor waarom u Excel misschien niet wilt gebruiken, is:

Spreadsheetverslaving

Als u zich in een situatie bevindt waarin u echt Excel moet gebruiken (sommige academische afdelingen staan ​​erop), dan raad ik aan om de Rexcel-plug-in te gebruiken. Hierdoor kunt u communiceren met Excel, maar het R-programma gebruiken als de rekenmachine. U hoeft R niet te kennen om het te gebruiken, u kunt vervolgkeuzemenu's en dialoogvensters gebruiken, maar u kunt veel meer doen als u dat doet. Aangezien R de berekeningen uitvoert, zijn ze veel betrouwbaarder dan Excel en heb je veel betere grafieken en boxplots en andere grafieken die ontbreken in Excel. Het werkt zelfs met de automatische celupdate in Excel (hoewel dat het erg traag kan maken als je veel complexe analyses moet herberekenen). Het lost niet alle problemen van de spreadsheetverslavingspagina op, maar het is een enorme verbetering ten opzichte van het gebruik van straight Excel.

#8
+1
Bob Nau
2015-02-19 05:56:15 UTC
view on stackexchange narkive permalink

Excel kan geweldig zijn voor zowel verkennende gegevensanalyse als lineaire regressieanalyse met de juiste plug-ins. Er zijn een aantal commerciële producten, hoewel de meeste te wensen overlaten wat betreft de kwaliteit van de output die ze produceren (ze profiteren niet volledig van de diagramopties van Excel of de mogelijkheid om te linken met andere Office-applicaties) en over het algemeen zijn ze niet zo goed als ze zouden kunnen zijn voor datavisualisatie en presentatie. Ze ondersteunen ook vaak geen gedisciplineerde modelleringsaanpak waarin u (onder andere) een goed gedocumenteerde audit-trail voor uw werk bijhoudt. Hier is een GRATIS plug-in, "RegressIt", die veel van deze problemen aanpakt: http://regressit.com. Het biedt een zeer goede ondersteuning voor verkennende analyse (inclusief de mogelijkheid om parallelle tijdreeksgrafieken en spreidingsdiagrammatrices te genereren met maximaal 50 variabelen), het maakt het gemakkelijk om datatransformaties toe te passen zoals lagging, logging en differencing (die vaak niet worden toegepast op de juiste manier door naïeve gebruikers van regressie), biedt het zeer gedetailleerde tabel- en grafiekuitvoer die de beste praktijken van gegevensanalyse ondersteunt, en het onderhoudt een audit-trail-werkblad dat zij-aan-zij modelvergelijkingen mogelijk maakt, evenals het bijhouden van welke modellen werden in welke volgorde gemonteerd. Het vormt een goede aanvulling op al het andere dat u mogelijk gebruikt, als u te maken heeft met multivariate gegevens en tenminste een deel van uw werk wordt uitgevoerd in een Excel-omgeving.



Deze Q&A is automatisch vertaald vanuit de Engelse taal.De originele inhoud is beschikbaar op stackexchange, waarvoor we bedanken voor de cc by-sa 2.0-licentie waaronder het wordt gedistribueerd.
Loading...