Co to jest format pliku R?
Pliki .r (zwyczajowo zapisywane jako .R wielką literą) zawierają kod źródłowy języka programowania statystycznego R, stworzonego przez Rossa Ihakę i Roberta Gentlemana na Uniwersytecie w Auckland w 1993 roku. R jest dominującym językiem w obliczeniach statystycznych, bioinformatyce i nauce o danych w badaniach akademickich i naukowych.
Skrypt .R to zwykły tekst w formacie UTF-8 bez obowiązkowej struktury - instrukcje są wykonywane od góry do dołu lub definiują funkcje do późniejszego załadowania za pomocą source(). Typowe skrypty zaczynają się od wywołań library() w celu załadowania pakietów, używają operatora <- do przypisania, stosują manipulację danymi w stylu tidyverse lub base-R, dopasowują modele statystyczne za pomocą funkcji takich jak lm() lub glm() i generują wizualizacje za pomocą ggplot2 lub grafiki bazowej. Komentarze są poprzedzone znakiem #. Skrypty są uruchamiane z wiersza poleceń za pomocą Rscript script.R lub interaktywnie wewnątrz RStudio. W systemach Unix shebang #!/usr/bin/env Rscript pozwala na bezpośrednie wykonanie.
Praktyczna niedogodność: w systemach plików rozróżniających wielkość liter (Linux, macOS) .R i .r to odrębne pliki. GitHub Linguist historycznie błędnie identyfikował .r jako REBOL zamiast R; społeczność REBOL od tego czasu przeszła na rozszerzenia .reb i .r3, aby zmniejszyć niejednoznaczność. Powiązane formaty obejmują R Markdown (.rmd) do programowania literackiego oraz RData (.rdata) dla zserializowanych obiektów R.
Bezpieczeństwo
RYZYKO: MEDIUMSkrypty R to kod interpretowany - wykonanie niezaufanego pliku .R może spowodować wykonanie dowolnych operacji na systemie plików, nawiązywanie połączeń sieciowych i instalowanie pakietów. Przed uruchomieniem skryptu z nieznanego źródła otwórz go w edytorze tekstu, aby przejrzeć jego zawartość. Kod R może wywoływać system() i shell() w celu wykonania poleceń systemu operacyjnego. Traktuj nieznane pliki .R jak każdy inny skrypt wykonywalny.
Szczegóły formatu
w pigułce- Skrypt REBOL - REBOL (Relative Expression Based Object Language) historycznie używał .r; społeczność preferuje teraz .reb / .r3, aby uniknąć pomylenia ze skryptami statystycznymi R.
Programy otwierające pliki R
Szczegóły techniczne
specyfikacja| Kodowanie tekstu | UTF-8 (zalecane i domyślne w nowoczesnym R); ASCII lub systemowe ustawienia regionalne akceptowane przez starsze wersje |
| Składnia komentarzy | Prefiks `#` dla komentarzy liniowych i wewnątrz linii; brak składni komentarza blokowego w bazowym R |
| Operator przypisania | `<-` (kanoniczny styl R); `=` jest poprawny, ale konwencjonalnie zarezerwowany dla przekazywania argumentów funkcji |
| Wielkość liter | W systemach plików rozróżniających wielkość liter (Linux, macOS) `.R` i `.r` są odrębne; GitHub Linguist może błędnie sklasyfikować `.r` jako REBOL |
| Metody wykonywania | `Rscript script.R` z wiersza poleceń; `source("script.R")` wewnątrz sesji R; interaktywny REPL w RStudio |
| Obsługa shebang | `#!/usr/bin/env Rscript` w pierwszej linii umożliwia bezpośrednie wykonanie w systemie Unix, gdy plik jest oznaczony jako wykonywalny |
| System pakietów | `library(pkgname)` importuje pakiety; ponad 20 000 pakietów w CRAN; Bioconductor dla przepływów pracy w genomice |
| Brak obowiązkowej struktury | Brak wymaganej funkcji `main()` lub deklaracji modułu; wykonywanie następuje od góry do dołu |
| Typowy rozmiar pliku | Poniżej 100 KB dla większości skryptów analitycznych; może osiągnąć kilka MB, jeśli duże wektory danych są osadzone jako literały |
| Dominujące IDE | RStudio (Posit) - zapewnia podświetlanie składni, zintegrowany REPL, przeglądarkę wykresów i zarządzanie pakietami dla plików `.R` |
| Role w ekosystemie | Modelowanie statystyczne (`lm()`, `glm()`), obróbka danych (dplyr, tidyr), wizualizacja (`ggplot2`), bioinformatyka (Bioconductor) |
| Praktyka reprodukowalności | `set.seed()` dla reprodukowalności stochastycznej; `sessionInfo()` do rejestrowania środowiska wykonawczego dla opublikowanych analiz |
| Wydano | 1993 (R language); .R extension used since R's public availability (~1995) |
| Najnowsza wersja | R 4.4.x (2024); language and .R format unchanged in structure |
| Otwarty standard | Tak · bezpłatny (royalty-free) |
| Specyfikacja | www.r-project.org |
Konwersje R
Pytania i odpowiedzi społeczności
pytania użytkownikówBrak pytań - bądź pierwszą osobą, która zapyta o pliki R.