Kysymys:
Kuinka hallinnoida tilastollista analyysiprojektia tehokkaasti?
chl
2010-09-21 01:39:08 UTC
view on stackexchange narkive permalink

Kuulemme usein projektinhallinnasta ja suunnittelumalleista tietojenkäsittelytieteessä, mutta harvemmin tilastollisessa analyysissä. Vaikuttaa kuitenkin siltä, ​​että ratkaiseva askel kohti tehokkaan ja kestävän tilastoprojektin suunnittelua on pitää asiat järjestyksessä.

Kannatan usein R: n käyttöä ja tiedostojen yhtenäistä järjestämistä erillisissä kansioissa (raakatiedosto, muunnettu datatiedosto, R-komentosarjat, luvut, muistiinpanot jne.). Tärkein syy tähän lähestymistapaan on se, että analyysin suorittaminen voi olla helpompaa myöhemmin (kun unohdit esimerkiksi, kuinka sattui tuottamaan tietty juoni).

Mitkä ovat parhaat käytännöt tilastollinen projektinhallinta tai suositukset, jotka haluat antaa omasta kokemuksestasi? Tietenkin tämä koskee kaikkia tilasto-ohjelmistoja. ( yksi vastaus viestiä kohti, kiitos )

Äänestän tämän kysymyksen sulkemiseksi aiheen ulkopuolella, koska se koskee projektinhallintaa
@Aksakal: Luulen, että olet hieman ankara.:) Sillä on merkitystä "* tilastoista kiinnostuneille *".Myös yli 70 ääntä ehdottaa vahvasti, että tavalliset käyttäjät pitivät tätä kysymystä kiinnostavana ja hyödyllisenä.
Mielestäni tätä tulisi harkita tässä aiheesta.
@gung Haluatko ehkä lisätä vastauksen metaketjuun, jotta voimme keskustella siitä?
Seitsemän vastused:
#1
+80
chl
2010-09-30 15:44:48 UTC
view on stackexchange narkive permalink

Koon nopean sarjan ohjeita, jotka löysin sivustoilta SO (@Shane ehdottaa), Biostarista (jäljempänä BS) ja tästä SE: stä. Yritin parhaani mukaan tunnustaa jokaisen kohteen omistajuus ja valita ensimmäinen tai erittäin myönteinen vastaus. Lisäsin myös omia asioita ja merkitsin kohteet, jotka liittyvät [R] -ympäristöön.

Tiedonhallinta

  • Luo projekti rakenne kaikkien asioiden pitämiseksi oikeassa paikassa (tiedot, koodi, luvut jne., giovanni / BS)
  • Älä koskaan muokkaa raakatiedostoja (mieluiten ne tulisi lukea vain), kopioi / nimeä uudet muunnettaessa, puhdistettaessa jne.
  • Tarkista tietojen yhdenmukaisuus ( whuber / SE)
  • Hallitse komentosarjojen riippuvuuksia ja tiedonkulku rakennusautomaatiotyökalulla, kuten GNU make ( Karl Broman / Zachary Jones)

Koodaus

Analyysi

  • Älä unohda asettaa / tallentaa siementä, jota käytit soittaessasi RNG- tai stokastisia algoritmeja (esim. k-keskiarvoja)
  • Monte Carlon tutkimuksissa voi olla mielenkiintoista tallentaa tekniset tiedot / parametrit erillisessä tiedostossa ( sumatra voi olla hyvä ehdokas, giovanni / BS)
  • Älä rajoita vain yhtä kuvaajaa muuttujaa kohden, käytä monivaihtuvia (Trellis) näyttöjä ja interaktiivisia visualisointityökaluja (esim. GGobi)

Versio

  • Käytä jonkinlaista versionhallintaa seurannan / viennin helpottamiseksi, esim Git ( Sharpie / VonC / JD Long / SO) - tämä seuraa @Jeromy ja @Tal esittämistä mukavista kysymyksistä
  • Varmuuskopioi kaikki säännöllisesti ( Sharpie / JD Long / SO)
  • Pidä kirjaa ideoistasi tai luota ongelmanseuraaja, kuten ditz ( giovanni / BS) - osittain tarpeeton edellisen kohteen kanssa, koska se on saatavana Gitissä

Muokkaus / raportointi

Lisähuomautuksena Hadley Wickham tarjoaa kattavan yleiskatsauksen R-projektinhallinnasta, mukaan lukien toistettavissa olevat esimerkit ja yhtenäinen tietofilosofia .

Lopuksi R-suuntautuneessa Tilastotietojen analyysin työnkulussa Oliver Kirchkamp tarjoaa erittäin yksityiskohtaisen yleiskuvan siitä, miksi tietyn tieteen omaksuminen ja totteleminen työnkulku auttaa tilastotieteilijöitä tekemään yhteistyötä jokaisen muun kanssa samalla kun varmistetaan tietojen eheys ja tulosten toistettavuus. Se sisältää edelleen jonkin verran keskustelua kudonta- ja versionhallintajärjestelmän käytöstä. Stata-käyttäjät saattavat pitää myös J. Scott Longin The Data Flow of Data Analysis Using Stataa hyödyllisenä.

Hienoa chl! Olisiko se o.k. sinulta, jos voin julkaista tämän blogissani? (Tarkoitan, että tämä teksti on kopio, joten voisin, mutta halusin sinun luvan millään tavalla :)) Kippis, Tal
@Tal Ei hätää. Se ei ole kaukana tyhjentävästä luettelosta, mutta ehkä voit koota muita hyödyllisiä linkkejä myöhemmin. Voit myös sopeutua tai järjestellä uudelleen paremmin.
+1 Tämä on hieno luettelo. Voit harkita "tämän hyväksymistä" niin, että se on aina ylhäällä; koska se on CW, kuka tahansa voi pitää sen ajan tasalla.
@Shane No, olen velkaa teille siitä, että annitte ensimmäisen vastauksen niin hyödyllisillä linkeillä. Voit vapaasti lisätä / muokata haluamaasi tapaa.
Julkaisin sen uudelleen täällä. Suuri luettelo! http://www.r-statistics.com/2010/09/managing-a-statistical-analysis-project-guidelines-and-best-practices/
Äänestäisin pikemminkin Mercurialin kuin Gitin puolesta versiotyökaluna. Olen havainnut, että sitä on helpompi käyttää, eikä käyttäjäyhteisö ole niin ankara. (Macissa MacHG on loistava käyttöliittymän käyttöliittymä Mercurialille.) Mikä tahansa käyttämäsi versiotyökalu, käyttöliittymän käyttöliittymä on erittäin hyödyllinen ja tehokas asioiden seuraamiseen ja hallintaan.
@Wayne Kiitos siitä. Oliver Kirchkamp keskusteli SVN: n käytöstä; Huomasin usein käyttäneeni [RCS: ää] (http://www.gnu.org/software/rcs/) erilaisiin juttuihin, mutta olen kuullut hyviä asioita Hg: ltä. Olen samaa mieltä siitä, että graafinen käyttöliittymä voi olla plus, vaikka työskentelen pääasiassa komentoriviltä ja Emacsiltä. ([GitHub for Mac] (http://mac.github.com/) ei ole niin paha, btw.)
@CHL: Ensi silmäyksellä on helppo ajatella, että graafinen käyttöliittymä yksinkertaistaa aloittelijan käyttöä, mutta olen havainnut, että graafisen käyttöliittymän (ainakin MacHG) teho on dynaaminen. Pidän MacHG: n auki koko ajan, ja näen yhdellä silmäyksellä, mitkä tiedostot ovat projektissa ja mitkä on päivitetty. Napsauta tiedostoa nähdäksesi, mitä on muutettu. Se auttaa erityisesti, jos vaihdan projektia, auttaa muistuttamaan minua missä olin.
Tämä voisi todella tapahtua lisäämällä kuvaus siitä, kuinka Makefileä käytetään tietojen yhdistämisen ja välimuistin hallintaan. Jos joku tietää yhden, lisää se. Jos ei, yritän kirjoittaa sen pian, kun pääni kiertää sen.
@naught101 Karl Bromanilla on joitain oppaita GNU-työkalujen ja R: n käytöstä artikkelissaan "Työkalut toistettavaan tutkimukseen", http://kbroman.github.io/Tools4RR/.
mielenkiintoista - vastauksesi on erittäin kattava opas koodien / tiedostojen hallintaan.ei liian paljon tarkistamisen kannalta, oletko todella vastannut keskeisiin tutkimuskysymyksiin tai tuotosvaatimuksiin
#2
+21
Shane
2010-09-21 01:42:22 UTC
view on stackexchange narkive permalink

Tämä ei tarjoa nimenomaisesti vastausta, mutta kannattaa ehkä tarkastella näitä liittyviä pinonkulun kysymyksiä:

Saatat myös olla kiinnostunut John Myles Whitein viimeaikaisesta projekti luoda tilastollinen projektimalli.

Kiitos linkeistä! Kysymys on avoin kaikille tilasto-ohjelmistoille - käytän ajoittain Pythonia ja Stataa, joten ihmettelen, voivatko vahvistetut käyttäjät tuoda sinne mielenkiintoisia suosituksia.
Ehdottomasti; vaikka lisääisin, että yllä olevien linkkien suositukset voisivat todella soveltua mihin tahansa tilastoprojektiin (kielestä riippumatta).
Ehdottomasti kyllä! Päivitin kysymykseni samaan aikaan.
#3
+8
user88
2010-09-25 20:45:58 UTC
view on stackexchange narkive permalink

Tämä on päällekkäinen Shanen vastauksen kanssa, mutta mielestäni on kaksi päälaitaa:

  • uusittavuus ; ei vain siksi, ettet lopeta "jotenkin" tehtyjä tuloksia, mutta pystyt myös suorittamaan analyysin uudelleen nopeammin (muilla tiedoilla tai kevyesti muutetuilla parametreilla) ja sinulla on enemmän aikaa ajatella tuloksia. Suuren datan saamiseksi voit ensin testata ideoitasi pienellä "playsetillä" ja laajentaa sitten helposti kaikki tiedot.
  • Hyvä dokumentaatio ; kommentoi komentosarjoja versioncontrol, eräs tutkimuspäiväkirja, eventicket-järjestelmä monimutkaisempien projektien alla. Parantaa toistettavuutta, tekee virheiden seurannasta helpompaa ja loppuraporttien kirjoittamisen triviaalia.
+1 Pidän toisesta kohdasta (käytän roxygen + git). Ensimmäinen asia saa minut ajattelemaan myös mahdollisuutta antaa koodisi toiselle tilastotieteilijälle, joka pystyy toistamaan tulokset myöhemmin projektin myöhemmässä vaiheessa ilman apua.
Uusittavuus?Datassa on joka tapauksessa satunnaisvirhe, joten kuka välittää.Dokumentointi?Kaksi mahdollista vastausta: 1) Olemme liian kiireisiä, meillä ei ole aikaa dokumentointiin tai 2) Meillä oli vain budjetti joko analyysin tekemiseen tai dokumentointiin, joten päätimme tehdä analyysin.Luuletko vitsailevan?Olen nähnyt / kuullut näitä asenteita monissa yhteyksissä - projekteissa, joissa elämä ratsasti linjalla.
#4
+4
Carlos Accioly
2010-09-21 08:00:48 UTC
view on stackexchange narkive permalink

van Belle on lähde onnistuneiden tilastoprojektien säännöille.

#5
+1
Wes McCardle
2010-10-01 05:58:05 UTC
view on stackexchange narkive permalink

Vain 2 senttini. Minusta Notepad ++ on hyödyllinen tähän. Pystyn ylläpitämään erillisiä komentosarjoja (ohjelman hallinta, tietojen muotoilu jne.) Ja .pad-tiedostoa jokaiselle projektille. .Pad-tiedostopuhelu sisältää kaikki kyseiseen projektiin liittyvät komentosarjat.

Tarkoitat, notepad ++ npptorin avulla :)
#6
+1
Christian Sauer
2014-04-09 14:58:39 UTC
view on stackexchange narkive permalink

Vaikka muut vastaukset ovat hyviä, haluaisin lisätä toisen mielipiteen: Vältä SPSS: n käyttöä. Käytin SPSS: ää diplomityössäni ja nyt säännöllisessä työssäni markkinatutkimuksessa.

SPSS: n kanssa työskennellessä oli uskomattoman vaikeaa kehittää järjestettyä tilastokoodia, johtuen siitä, että SPSS on huono käsittelemään useita tiedostoja (varmasti, voit käsitellä useita tiedostoja, mutta se ei ole yhtä kivuton kuin R ), koska et voi tallentaa tietojoukkoja muuttujaan - sinun on käytettävä "dataset activ x" -koodia, mikä voi olla tuskallista. Syntaksi on myös kömpelö ja rohkaisee lyhytkirjoituksia, jotka tekevät koodista vielä lukukelvottomamman.

#7
  0
hugke729
2018-06-09 09:04:29 UTC
view on stackexchange narkive permalink

R / Python / Matlab / etc: n kanssa toimivat Jupyter-muistikirjat poistavat vaivaa muistaa, mikä skripti luo tietyn kuvan. Tämä viesti kuvaa siistin tavan pitää koodi ja numero aivan vierekkäin.Kun kaikki paperin tai opinnäytetyön luvun luvut pidetään yhdessä muistikirjassa, yhdistetty koodi on helppo löytää.

Vielä parempi, itse asiassa, koska voit selata esimerkiksi tusinaa kuvaa löytääksesi haluamasi.Koodi pidetään piilossa, kunnes sitä tarvitaan.



Tämä Q & A käännettiin automaattisesti englanniksi.Alkuperäinen sisältö on saatavilla stackexchange-palvelussa, jota kiitämme cc by-sa 2.0-lisenssistä, jolla sitä jaetaan.
Loading...