Wat is het RDA-bestandsformaat?
Een .rda-bestand (ook opgeslagen als .RData) is een binair serialisatiebestand dat is geproduceerd door de R-omgeving voor statistische berekeningen met de functie save(). Het slaat een of meer benoemde R-objecten op - vectoren, dataframes, lijsten, statistische modellen of volledige werkomgevingen - in het eigen binaire XDR-formaat (External Data Representation) van R, wat platformonafhankelijke compatibiliteit garandeert tussen Windows, Linux en macOS.
Het laden van een .rda-bestand met load() herstelt alle opgeslagen objecten rechtstreeks in de huidige R-omgeving onder hun oorspronkelijke namen. Dit verschilt van .rds-bestanden, die precies één object bevatten en de gebruiker bij het laden via readRDS() elke gewenste naam laten toewijzen. Voor het delen van een enkel object tussen scripts heeft .rds over het algemeen de voorkeur; .rda is handiger voor het opslaan van een volledige werkomgeving of een benoemde verzameling gerelateerde objecten.
Standaard comprimeert R .rda-bestanden met gzip, hoewel bzip2 en xz ook worden ondersteund via het argument compress= bij save(). De bestandskop codeert de versie van het serialisatieformaat: versie 2 (R 1.4.0, december 2001) is het meest breed compatibel; versie 3 (R 3.5.0, april 2018) voegt ondersteuning toe voor lange vectoren en ALTREP-objecten, maar vereist R 3.5.0 of hoger om te lezen. R biedt automatisch aan om de werkomgeving op te slaan als .RData bij het afsluiten.
Beveiliging & veiligheid
RISICO: MEDIUMRDA-bestanden kunnen R-code bevatten via geserialiseerde functie-/closure-objecten en omgevingen. Het laden van een niet-vertrouwd .rda-bestand kan code uitvoeren via geserialiseerde promise-objecten of actieve bindingen. load() van onbekende bronnen brengt hetzelfde risico met zich mee als het uitvoeren van willekeurige R-code. Laad alleen .rda-bestanden van vertrouwde bronnen.
Formaatdetails
in een notendop- Oracle Storage Area-bestand - Oracle gebruikt de .rda-extensie voor sommige interne beschrijvingsbestanden voor opslaggebieden - totaal niet gerelateerd aan R; extreem zeldzaam in de praktijk.
Programma's die RDA-bestanden openen
Technische details
diepe specificaties| Bestandstype | Binair geserialiseerde R-objecten (een of meer benoemde objecten per bestand) |
| MIME-type | application/octet-stream |
| Magic bytes | 52 44 58 0A („RDX\n”) voor binair XDR-formaat; „RDX3\n” header voor serialisatieversie 3 |
| Codering | XDR (External Data Representation) - big-endian, platformonafhankelijke binaire standaard |
| Byte-volgorde | Big-endian (verplicht volgens XDR-specificatie) |
| Compressie | gzip standaard; bzip2 en xz ook ondersteund via compress= argument bij save() |
| Typische grootte | 1 KB - diverse GB (volledig afhankelijk van de opgeslagen objecten) |
| Objecten per bestand | Meerdere benoemde objecten (in tegenstelling tot .rds dat precies één object per bestand bevat) |
| Laadgedrag | load() herstelt alle objecten in de huidige R-omgeving onder hun oorspronkelijke namen - kan bestaande objecten stilzwijgend overschrijven |
| Serialisatieversie | v2 (R ≥ 1.4.0, december 2001); v3 (R ≥ 3.5.0, april 2018); versie gecodeerd in bestandskop |
| Gelijkwaardige extensie | .RData - identiek binair formaat, andere naamgevingsconventie; R slaat werkomgeving op als .RData bij afsluiten |
| OS-ondersteuning | Windows, Linux, macOS (volledig platformonafhankelijk via XDR-codering) |
| Gerelateerd formaat | .rds - serialisatie van één object via saveRDS()/readRDS(); voorkeur bij het delen van individuele R-objecten |
| Uitgebracht | 2001 (R serialization format version 2, introduced in R 1.4.0, December 2001) |
| Laatste versie | Serialization format version 3 (R 3.5.0, April 2018) - adds support for long vectors and ALTREP objects |
| Specificatie | cran.r-project.org |
RDA conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over RDA-bestanden.