Spørsmål:
Hvordan frigjør jeg en R-pakke med flere sengefiler?
ShanZhengYang
2017-11-03 05:33:45 UTC
view on stackexchange narkive permalink

Jeg lager for øyeblikket en R-pakke, og skriptene mine krever før noen analyse gjøres at 1-2 sengsfiler lastes inn. Normalt vil jeg kjøre skriptene med følgende:

  bibliotek (data.table) session_bed = read.table ("/ path / name / to / bedfile.bed")  

og referer til session_bed gjennom hele analysen.

Men for å frigjøre dette som en R-pakke, tror jeg at disse filene må lastes ned på det tidspunktet når pakken installeres.

(1) Hvordan fordeles sengefiler normalt i R-pakker? Er disse gippet? Hvor er de plassert?

I følge http://r-pkgs.had.co.nz/data.html skal alle .bed-filer være inst / extdata Jeg antar. Det er imidlertid ikke klart for meg hvordan man kan "koble" til disse dataene i R-pakken.

Hvordan har andre pakker håndtert dette? (Er det en størrelsesbegrensning?)

(2) Bør i dette tilfellet funksjonen som laster sengefilen utføres for å laste inn R-biblioteket, -biblioteket (pakkenavn) ? Er det mer passende alternativ?

To svar:
benn
2017-11-03 13:33:00 UTC
view on stackexchange narkive permalink

Du kan lagre den i data / undermappe. Hvis en av funksjonene dine trenger denne sengefilen, kan du inkludere import av den i funksjonen din.

Her er noen eksempler hvordan du får data fra data / kode> undermappe.

Det er sannsynligvis flere måter å gjøre dette på, dette er bare en måte.

llrs
2017-11-03 16:48:41 UTC
view on stackexchange narkive permalink

Som benn sa, kan du lagre dem i data / undermappe i pakken. Det er ingen størrelsesbegrensning (AFAIK), men hvis du planlegger å publisere pakken i noen arkiver, kan de ha begrensninger eller andre begrensninger. Bioconductor krever å dele dataene som kreves for en programvarepakke på en viss terskel, men for liten datamengde er det greit.

Du finner dem via systemfil som: read.csv (system.file ("data / mydata.csv", package = "mypackage")) . Selvfølgelig trenger sengefilene apropiate-funksjonen for å laste dem inn.

Du kan laste inn når du ringer til biblioteket ditt ved å endre local -variabelen, eller bruke .First (jeg er ikke så sikker på den siste) , men dette forurenser miljøet og noen ganger hvis helst å bruke data -funksjonen. Du må kanskje konvertere filene dine til .Rdata -filen.



Denne spørsmålet ble automatisk oversatt fra engelsk.Det opprinnelige innholdet er tilgjengelig på stackexchange, som vi takker for cc by-sa 3.0-lisensen den distribueres under.
Loading...