R jsem pouzival na skole a prislo mi dost fajn. Minimalne ve srovnani s komercnima alternativama. Nepochopil jsem ale, jaky ma smysl ta jednoucelovost... Proc to proste nepostavili nad nejakym existujicim jazykem, ktery se da pouzit i mimo odvetvi. Mozna ho ta jednoucelovost v dlouhodobem meritku vysachuje...
Napriklad se dnes dost rozmaha statistika v pythonu pomoci prislusnych modulu. To uz je vic general purpose jazyk, ale proti R je asi o neco vic ukecany, coz je zas handicap pri vyuziti na rychle jednorazove vypocty ala chytra kalkulacka. I kdyz taky se da na to pouzit.
Ono to původně bylo určené statistikům, co o programování nevědí lautr nic (třeba biologům nebo sociologům). V tom se to myslím celkem povedlo. Vývojář by asi přirozeně sáhnul po nějaké knihovně ve svém oblíbeném jazyce.
> Proc to proste nepostavili nad nejakym existujicim jazykem, ktery se da pouzit i mimo odvetvi.
Jazyk R vznikl jako nová implementace jazyka S, ke kterému přidali další vlastnosti. "S" je (historický) jazyk pro statistiku. Takže je to skutečně tak, že autoři vzali existující jazyk S, kdoví, třeba v té době (90.léta 20. století) oblíbený. Historie S sahá někde do 70.let.
Osobně chápu R jako rychlý způsob, jak si ověřit nějaký koncept v rámci vývoje anebo naskriptovat statistickou analýzu včetně předzpracování dat, která je znovuspustitelná a při jakékoliv změně v datech nebo kódu dokáže automaticky provést veškeré výpočty a vygenerovat výsledný report odevzdatelný zákazníkovi.
1. 9. 2020, 14:14 editováno autorem komentáře
Jazyk S (a program S-plus) byl před rozšířením R na statistiku od sociologie po biologii velmi populární, dnes už ho dost vytlačil R. Takže R nespadlo samo z nebe. A "R" proto, že je v abecedě o krok před "S". :-)
Jazyk R (případně S) zachází s argumenty funkcí jinak než naprostá většina jiných jazyků. Například argumenty mohou mít defaultní hodnoty, mohou se uvádět v libovolném pořadí, dají se předávat i argumenty, které volaná funkce nezná (argument ...), ale může je předat do dalších funkcí. Tyhle vlastnosti jsou výhodné pro interaktivní práci ve statistice. Na programování radši používám Python, ale na skripty na vyhodnocení dat je jazyk R výborný.
Tak, v (moderním) Javascriptu / Typescriptu mohu mít tyhle vlastnosti také, to není nic neobvyklého.
> Na programování radši používám Python, ale na skripty na vyhodnocení dat je jazyk R výborný.
python pracuje s argumenty uplne stejne.
Aby to nebylo tak jednoduché, neobsahuje R pouze dva, ale nejméně čtyři objektové systémy, tj. způsoby, jak programovat orientovaně na objekty: S3, S4, R5 a R6. Viz např.: https://stackoverflow.com/questions/27219132/creating-classes-in-r-s3-s4-r5-rc-or-r6
Sepsal jsem před časem sérii článků o úvodu do erka, primárně cílené na uživatele ze světa businessu - kdyby to někomu k něčemu bylo, tak budu rád... https://www.jla-data.net/r4su/
1. 9. 2020, 15:43 editováno autorem komentáře
Proc funkce lm pouziva metodu nejmensich ctvercu? Vsude se pise, jak je na realnych datech nepresna.
Funkce lm (zkratka z Linear Model) z definice pracuje s lineárním modelem; ten se učí přes nejmenší čtverce, ale technická implementace bývá postavená na maticích. Jestli dobře pamatuju tak erko má LU, ale nerad bych kecal. V každém případě za tím je BLAS / LAPACK a tedy FORTRAN.
> Funkce lm (zkratka z Linear Model) z definice pracuje s lineárním modelem; ten se učí přes nejmenší čtverce,
z historickych duvodu, protoze to jde snadno spocitat, ale pro nejlepsi aproximaci vetsinou nechcete minimalizovat druhe mocniny odchylek
Také používám https://rkward.kde.org/ a přijde mi mnohem lepší, než RStudio. Ještě že máme dost voleb. :-)
Děkuji za hezký seriál, doufám, že bude dlouhý. :-)
Instrukce pro instalace R pro velké distribuce jsou na https://cran.r-project.org/ Třeba pro (open)SUSE si lze vybrat zdali držet určitou verzi R k datu vydání distribuce (nové verze R vyvíjí celkem často), anebo mít vždy tu nejnovější.
Instalace ggplotu2 (kapitola 15) má být > install.packages("ggplot2")
R se použít pro ledacos, třeba na molekulárně biologická data :-)