
quindi nel caso ti stia chiedendo dove
il titolo deriva da quanti di voi hanno visto
il film il buono il brutto e il cattivo
oh mia parola sono sorpreso che non abbia mai visto
fino al volo qui ho guardato
li ho almeno il mio portatile , almeno
ora aggiusta tutto bene, sì sì, così è
uno spaghetti western del 1966 il
Gli attori italiani hanno detto le loro battute
Italiani gli attori americani hanno detto il loro
linee in inglese e hanno appena soprannominato
la lingua opposta per ciascuno per il contratto di locazione
quindi ho pensato che se le cose andassero male solo
fai finta di parlare italiano
e doppiando me stesso in inglese tutto bene
va bene solo un po ‘di storia
su dove vengo dal mio
prospettiva come sono arrivato a R ho iniziato
Ho iniziato la mia carriera lavorando in matematica
l’università di sinistra è diventata un software
sviluppatore e più di recente vieni
fare il calcolo statistico così ho
una sorta di prospettiva di un outsider su
statistiche e la nostra lingua e te
so che ho scritto un po ‘di codice
e forse una dozzina di lingue e R ha
è stato il più difficile per me da non imparare
perché è intrinsecamente difficile
lingua se non sai niente e tu
raccogli R poi la impari ma se
conosci altre cose R è solo una specie di
strano e si tipo di vuole rendere
in qualcosa che non è ed è una specie di
difficile da imparare
non impari allo stesso modo di te
impara Perl o Java o qualcosa di te
giuste domande chiedi non va bene come faccio io
fai loop dove fanno i tipi di dati dove si trovano
come funzionano le classi non è così
imparare sono infatti che l’ informazione è
po ‘difficile da scoprire e un sacco di
le persone che usano sono più probabilmente
non potevo rispondere a quelle domande sono è a
linguaggio specifico del dominio e così hai
capire l’ apprendimento del dominio
puramente come una lingua è come imparare
PHP come lingua senza essere
interessato allo sviluppo web o
apprendimento sequel
come lingua va bene quali sono i dati
tipi in cui le strutture come questa I
non mi importa dei database che voglio
per imparare il seguito come lingua okay
questo è il tipo di cosa che sarebbe come
che era la mia mentalità di venire a sono a posto
Ho imparato i linguaggi di programmazione
prima ho intenzione di applicare il mio standard
modello e il nostro non si adattava
quindi qual è il nostro è open-source
linguaggio statistico e forse chiedendo
perché le statistiche hanno bisogno della propria lingua
ci arriveremo
è lo standard di fatto per le statistiche
ricerca ora non statistiche in generale
pratica non statistica ma più
ricerca statistica le persone che sono
facendo statistiche standard applicando
metodi ben noti a ben noti
i problemi probabilmente usano qualcos’altro
come forse SAS ma le persone che sono
fare ricerche sui metodi statistici
stiamo usando il nostro prodotto dalle s
lingua s per le statistiche che rende
più senso del nostro ciò che è il nostro stand
perché è solo un po ‘- – Immagino di si
crebbe dal progetto dal 1976 e
quindi rivisto in 88 da Bell Labs così
in realtà sì sì le lingue
influenzato dallo schema e da Fortran noi
pensa come sia strano
miscela come può essere influenzato da entrambi
il nostro è stato scritto per la prima volta in entrambi gli schemi
o Lisp, dimentico che e ho avuto questo
schema come la sintassi ma poi è diventato
imperativo avere compatibilità con s
che aveva più sintassi di ish di Fortran e così via
la nostra adottata e così che tu possa
vedi anche qualche influenza di Fortran come
gli indici di matrice iniziano da uno e le matrici
sono memorizzati da colonne come Fortran
e come Dennis Ritchie ha detto di C è
eccentrico viziato e un enorme successo I
direbbe rispetto a vedere è pari
più stravagante ancora più difetto
ma di grande successo nella sua nicchia va bene così
davvero quello che è ciò che ti ho dato
prima è solo una specie di standard
Articolo di Wikipedia questo è ciò che bla bla
bla, ma per spiegare qualcuno condividere un
citazione da un romanzo di fantascienza il
cantico per Leibowitz dice che non lo fai
avere un medico del suolo sei un’anima tu
avere un corpo temporaneamente
è la mia Epifania e ci provo
capire di cosa si tratta R è che R
non è una lingua R ha una lingua R è
un ambiente per fare statistiche
tipo di lavoro e ha una lingua è
un po ‘come VBA excel ha una lingua
ma studiando quella lingua in isolamento
volendo studiare VBA non programmare
Excel è solo un po ‘strano
o un altro esempio potrebbe essere Emacs Emacs
ha un linguaggio di programmazione Emacs Lisp
dialetto molto vecchio di Lisp che io non conosco
penso che molte persone adorino che sia pieno
linguaggio di programmazione che potresti scrivere a
Web server in Emacs Lisp Suppongo
anche se dubito che qualcuno ci abbia
non dovrei dire che non dovrebbe mai dirlo
aveva up di Damian lì a pensare bene fare
mi è piaciuto e lo farò solo
usando i personaggi con linee rette ora
ma penso che molte persone pensano
Emacs Lisp come il prezzo che si paga
raggiungere la funzionalità di Emacs
e penso che sono un po ‘come quella
enorme quantità di funzionalità e il
il nostro linguaggio è il modo in cui lo incollate
insieme, quindi, solo aiutare quanto è popolare il nostro
ecco un esempio da un’analisi dei dati
concorrenza che lingue usavano le persone
sono usciti i più popolari e se
noterai una sorta di sistemi mainstream
Mi dispiace, oh, lo è
va bene per tutti, quindi se tu
guarda da sinistra a destra devi essere carina
molto in basso, prima che tu diventi generale
lingue come Python nel
middle C ++ Java all’estremo, quindi persone
non stanno usando le lingue di sistema per farlo
analisi statistica non sono nemmeno
usando l’avviso delle lingue matematiche
Mathematica è piuttosto in fondo alla
elencare ora un altro punto dati questo era
da un sondaggio in bioinformatica in cui R
è uscito in cima ma dovrò dire
qualcosa per spiegare perché penso che sia Perl
classificato così alto qui significa bioinformatica
cose diverse a persone diverse
è un sottoinsieme di informatica per
alcuni è un sottoinsieme di statistiche per alcuni
è chi conosce gli altri così alcune persone
che vengono sotto l’ombrello di
la biostatistica sta facendo un sacco di file
munging così molte persone usano perl per
elaborare sequenze di DNA come stringhe e
Immagino sia quello che spiega
la popolarità di Perl qui le persone
chi sta facendo statistiche con dentro
la bioinformatica utilizza ampiamente
okay, quindi, com’è usare R bene?
ecco una citazione che usa effettivamente R è un po ‘
parenti a fumare l’inizio è
difficile quando ho mal di testa e anche
imbavagliare le prime volte ma nel lungo
eseguirlo diventa anche piacevole
avvincente ma profondo per quelli
disposti ad essere onesti c’è qualcosa
non completamente sano su di esso un altro
confronto da Drew Conway e John
miglia bianche il loro recente libro sulla macchina
l’apprendimento è unico e in qualche modo
sintassi pungente e tende ad avere un
curva di apprendimento più ripida rispetto ad altre
le lingue vanno bene così se se R ti fa venire il bavaglio
e ha sintassi pungente perché le persone
piace così come ha detto qualcuno di Google
la cosa migliore di R è che lo è
scritto da statistici
la cosa peggiore è che è così
scritto dagli statistici va bene così
capisci hai davvero bisogno di
capire un po ‘di cosa sia
statistiche che le stazioni dell’ascia sono come e
hanno una visione molto diversa del
mondo che i programmatori potrebbero essere
programmazione nel senso che sono
trascorrere le loro giornate di fronte a
monitorare digitando le cose e correndo
cose ma vedono il mondo molto
in modo diverso e se hai fatto un funzionale
Risonanza magnetica di un programmatore seduto a
computer e uno statistico seduti a
computer diverse parti del cervello
si accendono perché sono solo loro
vedute molto diverse del mondo e se
non hai familiarità con le tue statistiche
potrebbe essere sorpreso che sia in realtà
abbastanza diverso dalla matematica pensi bene
è solo un ramo della matematica ma davvero
è molto diverso come una specie di
espatriato matematico che vive in a
Dipartimento statistico , posso dirti che lo è
ha impiegato molto tempo per imparare il gergo se
conosci un diverso gergo per tutto
una prospettiva diversa su ciò che è
accettabile cosa non lo è e quindi non lo fai
vedi gli statistici usando lingue come
Mathematica la matematica molto popolare
dipartimenti come abbiamo visto sul precedente
scivoli
non tanto nelle statistiche e molto
le persone nelle statistiche apprendono sono come loro
impara le statistiche e se vai a cercare
per un libro su probabilmente troverai un
libro sulle statistiche di cui sono a conoscenza
solo un libro che menzionerò al
fine che è davvero circa il nostro come a
linguaggio di programmazione perché non lo è
come la maggior parte della gente pensa che sia la maggior parte delle persone
impara a fare concetti come
li imparano in statistica e così il
il nostro linguaggio di programmazione diventa
sinonimo dei concetti statistici
in una certa misura e diventa
impensabile usare qualsiasi altra cosa , quindi R è
un linguaggio specifico del dominio e
capire un linguaggio specifico del dominio
devi capire il dominio tu
inizia con il dominio non la lingua
quindi l’ alternativa al nostro non lo è
qualcosa come Python o C sharp o il
l’alternativa è SAS, quindi usare un mainstream
il linguaggio di programmazione è letteralmente fuori
la domanda per la maggior parte degli statistici se
non hanno usato R, ne useranno un altro
linguaggio statistico e spesso persone
chi lo sa, sa solo R e ama
il loro linguaggio specifico del dominio e loro
usalo per cose al di fuori del dominio che sono
certo qualcuno ha scritto un server web e
sono proprio come hanno scritto uno e
Emacs Lisp se io ragazzi ho risposto ad alcuni
domanda su Immagino con Stack Overflow
riguardo a R e hai detto bene che non usi mai R
per un server web sai che lo useresti
per questo e poi qualcuno ha risposto
bene ho implementato il web server
del tutto okay, quindi perché le statistiche
ho bisogno del suo DSL bene da una cosa
significa cosa piuttosto fondamentale che vuoi
funzioni statistiche per essere accessibili
se tu se potessi immaginare una casa a
lo statistico avrebbe usato C sharp
e dire scrivere math dot log ogni volta
devono prendere un logaritmo sarebbe
essere come dover usare il punto condizionale se
o punto del ramo o qualunque cosa nel vostro
il linguaggio diventa davvero un dato fastidioso
spesso arriva in tavoli e così tavolo
la manipolazione è fondamentale in
la lingua perché è qualcosa che
Succede così spesso operazioni vettoriali
tutto in statistica è vettorizzato
perché hai più osservazioni
hai osservazioni su più cose
più persone più gatti qualunque
e quelli sono i tuoi vettori, quindi tutto
i dati mancanti orientati a Viktor sono a
fatto di vita ha un vero set di dati
dati mancanti e quindi vuoi il tuo
linguaggio per gestirlo senza intoppi e non
solo oh mio Dio abbiamo dati mancanti
quello che stiamo andando a fare lanciare un
l’eccezione chiama la polizia di cui hai bisogno
ho bisogno di avere un linguaggio così
non dà di matto con i dati mancanti e
proprio come sai qualcosa come perla
ha modelli per testo munging R ha
modelli per compiti statistici comuni
e vedremo un po ‘questo in a
minuto
okay alcuni vantaggi del nostro Python
alle persone piace dire che arriva Python
batterie incluse che significa download
Python e hai tutto te
bisogno per iniziare bene che può essere
vero per alcuni tipi di Python
programmazione ma se lo stai facendo
calcolo statistico in Python non lo è
batterie incluse si inizia con
Il linguaggio Python usa matplotlib per
pianificando le cose su Syfy se ne hai bisogno
le funzioni matematiche usano ipython come a
shell in modo davvero che è più del
tipico ambiente Python per
il calcolo scientifico R non è così
ti apri hai tutto questo
cose in un gigantesco spazio dei nomi tutto
che probabilmente avrai bisogno è giusto
lì se stai facendo quel tipo di lavoro
se non stai facendo questo tipo di lavoro
ti chiedi perché mancano le cose
okay R è progettato per i dati interattivi
l’analisi non è stata progettata non è mai stata
inteso per sgranocchiare sai enorme
set di dati è molto significato per
qualcuno che inizia con il set di dati
gioca con me fammi vedere come questo
funziona cosa se pianifico questo contro questo
è una specie di nudismo in giro ed è così
molto bravo in questo
è un programma più facile di alcuni dei suoi
i concorrenti non hanno programmato SAS ma
da quello che capisco il linguaggio è
circa sofisticato come das batch
file in cui è davvero più di una macro
lingua piuttosto che una programmazione tradizionale
lingua in modo che spiegherebbe perché
persone che sono felici di ciò che viene
la spedizione con SAS utilizza persone SAS che lo sono
la necessità di scrivere le proprie cose tende a
gravitano verso sono ovviamente R è aperto
fonte che è un affare più grande di te
potrei immaginare come la mia istituzione
con il denaro contante possiamo acquistare software
ma è noioso comprare software
la cosa bella dell’open source no
risparmiare denaro sta evitando il
burocrazia di ottenere un ordine di acquisto
e lo stesso vale per tutto il mondo
ovunque tu abbia un collaboratore loro
può anche scaricarlo senza andare
attraverso la loro burocrazia okay e tu
potrei immaginare se hai a che fare con
con i dati tutto il tempo che vuoi
ottimizzare le operazioni come query e
filtraggio perché è qualcosa
andando a fare molto diventeremo lineari
regressione un paio di esempi qui in modo da
un esempio di come puoi lavorare con
i vettori nel nostro supponiamo che tu non abbia
elementi e vuoi impostarli
zero hai una bella notazione succinta
quello dice nell’array X quegli elementi
che sono gli RNA a metterli a zero o tu
avere espressioni più complicate all’interno
il tuo operatore di indice per il quale potresti dire
quegli elementi di X il cui corrispondente
l’indice in Y corrisponde al valore di y
che è più grande di sette selezionare quelli
cose e prendere il registro di loro così questo
il tipo di notazione ne consente alcuni
programmi succinti e stretti è anche
sconcertante se non l’hai mai visto
prima di allora un altro esempio lo sai
regressioni lineari compiti molto comuni in
statistiche hai alcuni dati che desideri
vedere bene che tipo di linea potrebbe avere
adattarsi quindi immaginiamo un equo
scenario complicato qui abbiamo tre
variabili indipendenti XY e Z che vogliamo
adattare un modello lineare a questi e noi
desidera includere alcuni termini di interazione
il che significa che non vogliamo solo x y & z come
variabili indipendenti anche noi vogliamo
considera XY o YZ ma non vogliamo
considera XZ per qualsiasi motivo, quindi noi
voglio costruire questo tipo di lineare
equazione vogliamo trovare il minimo
piazze adatte a ciò che vogliamo guardare
diversi residui e cose del genere
bene
è molto succinto nel nostro
la notazione di regressione lineare è analoga
alle espressioni regolari per il testo munging
uno statistico facciamo qualcosa di simile
tutte le volte che altre persone avrebbero grep su
qualcosa e quindi hai questo tipo di
sotto lingua nella lingua che
rende queste cose facili da esprimere così dentro
un po ‘più di dettaglio ti sta adattando questo
set di sei variabili così quando dice X
più y più Z al quadrato
questo non significa letteralmente prendere
interpretarlo come un polinomio e
quadrato non significa affatto
dice che questa è una scorciatoia per dire che voglio
includere le variabili XY e Z e I
Voglio anche includere prodotti di coppie
ma non voglio prendere in considerazione la XZ
questo è ciò che – alla fine significa e
implicitamente c’è un termine costante a così
Notazione succinta molto bella per a
lungo problema per descrivere mi dispiace in
SAS si farebbe ciò che, ma si sa, lo farà
sanguinamento va bene così ecco un semplice
esempio di regressione questo è alcuni dati su
farfalle guardando l’effetto di
tannini nella loro dieta su quanto bene
è cresciuto così una lettura in un file di testo che ha
i miei dati lo sto dicendo intestazione uguale
il vero significato interpreta la prima riga di
il file come intestazioni per le colonne quando
Dico allegare i dati che sto dicendo che voglio
usa le intestazioni delle colonne come variabili
nomi e dico solo per essere sicuro di avere
quello che penso di aver lasciato dire nomi e
stampa che va bene allora tutto il codice
necessario adattare una linea a quei dati
un modello equivale a costruire un modello lineare
regredire la crescita sui tannini e quando
lo ottieni se guardi il
riepilogo ottieni una quantità abbondante di dati
non si ottiene solo l’interpiano e
intercettandoti ottieni molto più di te
ottieni questi valori p per i coefficienti
ottieni dei residui ottieni tutti i tipi di
dettaglio che potresti voler vedere tutto
questo è contenuto in un oggetto così quando io
Dì riassunto sta stampando un oggetto ma
se fossi interessato solo a pezzi di
questo potrei dire il nostro modello di dollaro
usi del simbolo del dollaro dove potresti
aspettatevi un modello simile a un punto come questo
o quello per ottenere due pezzi di questo oggetto
che rappresenta l’uscita di regressione
ora un altro esempio guarda alcuni dati
imposta quello che viene con il nostro quando tu
scarica il nostro viene fornito con diversi dati
imposta questi sono un po ‘ come il
equivalente di Microsoft Northwind
database sai che c’è qualche standard
set di dati che le persone usano negli esempi
e uno è questo dati di tendenza del motore da
1974 guardando tra le altre cose
chilometraggio e peso e se qualcosa
ha la trasmissione manuale o automatica così
puoi chiamare aiuto su questo set di dati e
questo per mostrarti una cosa come questa e
se guardi i dati ce ne sono dodici
Colonne le due che ci interessano
eravamo in tre ci interessa il peso
e il chilometraggio del gas e se il
la trasmissione è standard o automatica così
ecco un esempio di un’analisi di
questi dati in modo da avere una linea per
trasmissioni automatiche la linea rossa
la linea bluastra più ripida per il manuale
trasmissioni non solo si adattano alle linee
ai dati che tracciate i dati questi grigi
le bande intorno alle linee rappresentano
l’incertezza diventa grigia
sfondo con griglia bianca in modo che
la griglia è lì è visibile ma lo è
non reale non è vero ovvio che tipo di
sfuma sullo sfondo no
oscuro
dati ed ecco il codice per la produzione
che il codice è molto dichiarativo, quindi io
dillo quali dati voglio che io stia usando a
libreria ggplot2 Hadley Wycombe è un
biblioteca molto carina , lo sto raccontando
la trasmissione è un fattore che significa che è
alcuni sono alcuni dati che sto trattando come
categorie quando vedo uno 0 e un 1 nel
file che non significa nessuna trasmissione
o 1 trasmissione significa che questi sono due
categorie che sto guardando così dentro
la routine tramando dico che voglio
per tracciare il peso in miglia per gallone da
il set di dati auto MT e voglio colorare
codice il voglio codice colore i miei dati
e mostrarlo come punti che vado ad adattare a
modello lineare che è il LM X tilde Y
dice che voglio tracciare y come funzione di X
e così via, ok, alcune caratteristiche linguistiche
sono digitato dinamicamente sì di prima classe
le funzioni hanno chiusure in modo da poter passare a
funzione come argomento di una funzione
quel genere di cose ha un oggetto
il sistema ha infatti due sistemi di oggetti
uno chiamato s3 e uno chiamato s4 mentre
s3 il vecchio sistema è una specie di
perlato
dove hai una lista e la benedici
in un oggetto è molto permissivo
conveniente loosey-goosey l’oggetto s4
il sistema è più rigoroso dove tu tu
devo dire quali sono i tuoi campi e se
digiti qualcosa che non è un campo
riceverai un avvertimento bene che non è il
caso con il vecchio sistema nessuno dei due
sta andando via in qualsiasi momento presto
la maggior parte degli oggetti usa s3 il
il vecchio sistema s4 è più recente e funziona meglio
con interfaccia con le altre lingue
come C
sia nell’uso comune che nel vecchio sistema
è ancora più popolare, infatti, se tu
guarda la guida di stile di Google per il nostro
dicono di evitare s per le classi, quindi R è
orientato al vettore per meglio o peggio
ci sono solo vettori nella lingua
non ci sono numeri se si digita un 7
questo è un vettore di lunghezza 1 contenente
il numero 7 quindi tutto è un vettore
nel bene e nel male, meglio è possibile
è molto conveniente dire semplicemente X plus
y e somma le componenti in peggio
eppure quando ottieni qualcosa che dici bene
è questa cosa un numero che intendo cioè è
avrà lunghezza 1 o ce l’ha
legato più di un modo come dovrei
trattalo e tutto è passato
valore che può ridurre gli errori ma è così
può anche portare a molte copie e
tutto è annullabile perché abbiamo detto
sai che è importante in una statistica
linguaggio per avere la capacità di trattare
con i dati mancanti che puoi gestire
dati mancanti in due modi in R hai un
in ae hai un null quindi un in a
significa che non conosco questo ha un valore che
ha senso solo che non so cosa che
il valore è quindi hai una sorta di questi tre
logica di stato puoi anche avere uno sconosciuto
Mi dispiace che tu abbia anche un null
significa far finta che io non esista è come
la battuta di Harry Potter dove dice
Sarò nella mia stanza senza fare rumore e
fingendo di non esistere quindi se tu
qualche contesto quando vedi null il
la funzione lo ignorerà semplicemente come se fosse
non lì ma se ne vedi uno dentro
dipende da quello che hai detto così anch’io
ignora na s o li prendo in
account
va bene così un esempio di vettorizzazione
supponiamo di voler generare un milione
variabili casuali campioni casuali casuali
con una distribuzione normale fa la nostra norma
che così X contiene un milione di random
campioni da uno standard normale e poi
io
fare lì qualche idea di pre
allocare un vettore di tutto ciò
hai bisogno è buono il nostro stile ma lo farebbe
sii povero stile C perché sta perdendo
memoria quindi se sei un programma C sei
venendo al nostro si potrebbe dire bene questo
questo è un brutto modo di fare le cose
sì è il codice stretto, ma ho intenzione di essere
intelligente sto per generarne uno a caso
valore alla volta e aggiungilo alla mia somma
e ho intenzione di salvare allocando tutto
questa memoria bene il secondo esempio funziona
25 volte più lento del primo esempio
quindi, cosa è cattiva pratica e R è buona
pratica e C in lingue come quella
e viceversa, quindi le persone che ho lavorato
con chi ha imparato il nostro primo e poi
vieni in una lingua più nuova in cui scrivono
il primo esempio salva tutto
prima che facciano qualcosa con esso e dica
no no non devi farlo qui dentro
il nostro non devi farlo se non tu
quasi doverlo fare perché è di più
efficiente, perché i loop sono molto
inefficiente e siete in qualsiasi momento ti lamenti
sull’efficienza del nostro primo
cosa qualcuno ti dice bene
ti sei sbarazzato dei tuoi loop for
il che è davvero strano da pensare
di un linguaggio di programmazione scoraggia
per loop intendo non solo a volte te
non ne hanno bisogno ma davvero no
voglio anche usarli se puoi evitare
va bene quindi alcuni degli inconvenienti sono
è lento quindi basta dare un numero magari a
cento volte più lento del C ++ ma questo
varia se hai codice scritto in modo ingenuo
forse è un migliaio di volte più lento o
forse è due volte più lento che può variare
tremendamente a seconda di quello che sei
fare molto del nostro è scritto in C in
il back-end e se stai passando a
molto lavoro da fare per vederlo
mastica prima di sputarlo indietro
potrebbe essere abbastanza efficiente ma se molto
del lavoro sta realmente accadendo nel nostro
potrebbe essere uno strumento molto inefficiente
il supporto è un vero problema, se lo sei
venuta
dallo studio visivo e questo è il tuo
aspettativa di quali strumenti linguistici
dovrebbe essere il nostro circa 20 anni indietro
sta iniziando a prendere alcuni degli strumenti
che abbiamo preso per scontato circa a
un paio di decenni fa la sicurezza è nostra
progettato per l’uso interattivo non lo è
progettato per la produzione e questi sono
intenzione ci sono un sacco di cose
esso consente di ottenere via con partendo dal presupposto che
stai interagendo in modo interattivo con un dato
imposta e saprai se l’hai fatto
qualcosa di sbagliato, quindi chi sono io per lamentarmi
quindi è quello che hai detto, immagino sia così
cosa volevi dire e ti lascerò fare
quindi se vuoi assegnare un valore a uno
delle parole chiave delle lingue, credo
questo è ciò che intendevi per un problema
tutto questo è gente che usa il nostro al di fuori
il suo punto debole sono solo un sacco di persone
lo so sono così lo usano per qualsiasi cosa
compito hanno tutto bene quindi se vuoi
per saperne di più su alcuni dei più scuri
punti del nostro c’è un rapporto chiamato il
il nostro inferno che dice se credi
sei nel nostro inferno ecco la tua guida
quindi è 126 pagine è un po ‘modellato
sull’Inferno di Dante c’è una specie di
opere d’arte medievale in esso e così via
ma ha molte informazioni dettagliate
su angoli strani del nostro e come trattare
con loro giusto così il libro che desidero
qualcuno scriverà è il buono
parti voglio dire se hai familiarità con
JavaScript le parti buone questo è un
ottimo libro che Crockford prende
JavaScript e ha un occhio molto freddo
vista di esso queste sono caratteristiche che sono
solo male ma dentro JavaScript c’è un
Linguaggio veramente bello ed ecco cosa
penso che sia qui il sottoinsieme che io
pensare è il buon linguaggio dentro
JavaScript vorrebbe che qualcuno scrivesse
un tale libro per i nostri ci sono molti
le cose che stanno davvero bene lì
le nostre mine terrestri nelle ARDS come la loro terra
miniere in JavaScript sono le lingue
simile in quel modo in cui la gente usa
entrambe le lingue prima di impararle e
c’è qualche insidia per gli incauti
quindi ogni volta che parlo di questo libro io
devo mostrare questa immagine c’è il
JavaScript a sinistra e poi c’è
le parti buone del piccolo libro su OK
quindi alcune lezioni dalla nostra analisi dei dati
è molto diverso dal sistema
programmazione più diversa di te
potrebbe pensare
la gente si sopporterà molto per ottenere
il loro lavoro è fatto se dici che lo fai notare
alcuni dei problemi con il nostro che ha
questa stranezza ha questo fallito
silenziosamente questo non funziona la gente dice
sì ma io devo avere il mio lavoro mi
non importa quanto sia elegante la tua programmazione
il linguaggio è che non posso fare il mio lavoro
con esso quindi non ho intenzione di considerarlo
e le persone useranno uno strumento familiare se
tutto sommato possibile, quindi alcune risorse
per il nostro puoi scaricare il nostro dal
il nostro progetto il nostro – org del progetto che ho
scritto una guida che è una sorta di a
i programmatori vedono i nostri se l’hai fatto
scritto C ++ Java Perl questi comuni
lingue questo si dice l’alcuni dei
cose che potresti trovare sorprendenti
quando guardi per la prima volta il nostro e questo è
il libro di cui ho parlato prima è l’unico
prenotare che io sappia che tratta il nostro come un
il linguaggio di programmazione è l’arte del nostro
programmando questa è una stampa senza amido
libro che è uscito forse un anno fa ho
ho dimenticato che è abbastanza recente, ma è un
buona introduzione se vuoi una specie di a
i programmatori osservano gli occhi di noi e dei nostri
Twitter c’è un account nostro Lang
suggerimento l’ ho iniziato qualche tempo fa con
un consiglio al giorno sul nostro e poi io
consegnato ad altre persone che
sapeva di più sul nostro per lasciarli correre
hanno continuato a crescere bene così
questo è tutto da parte mia
domande
sì signore destra il problema non è binaria
compatibilità si può ottenere altro
lingue da chiamare o chiamare
altra lingua, solo il problema è di più
compatibilità culturale per esempio
stai costruendo un’interfaccia c-sharp
in cima al nostro dove lo si passa in un vettore
o forse peggio il contrario
quindi stai scrivendo C C ++ e ti bypassa
un vettore R bene questo è un vettore di
numeri che presumi abbia numeri in esso
beh non necessariamente forse ha nas
forse ha valori nulli
quindi se qualcuno dice che l’ho scritto
codice è semplicemente fantastico da usare
fare attenzione a questo tipo di cose o
per esempio cosa fa su un errore
beh forse si blocca e va bene se
stai esplorando interattivamente un dato
non va bene su un server sì, quello che era
la domanda è Archer
incompleto sì sì sì ok così dentro
il nostro mondo
puoi avvolgere cose che sono state un modulo
e distribuirlo in quel modo e loro
in realtà hanno un bel modulo
sistema se il tuo codice è scritto in C ma
avvolto in R verrà compilato
installare e tutto solo tipo di
funziona ma è all’interno del nostro mondo se
non è accettabile che tu voglia
interfaccia con il resto del mondo o tu
vogliono più prestazioni di quelle in più
difficile quindi se hai bisogno di accelerare o
un modo per farlo è riscrivere le cose
in C ++ forse scrivi poi riscrivi il
intera cosa o forse strategicamente
riscrivi un hotspot sì, circa un anno
fa ho esaminato come posso accelerare il nostro
e ho letto bene tutti questi documenti
sai a volte se inverti il
ordine di queste due cose su una luna piena
potrebbe essere il 10% più veloce e l’unico
modo affidabile che conosco per migliorare il
l’esecuzione di R è di rimuoverlo da R
e ci sono un paio di modi per farlo
c’è un’interfaccia C
dove puoi chiamare C o Fortran c’è
un’interfaccia di livello superiore attraverso questo
modulo chiamato il nostro CPP che ti dà un
Interfaccia di alto livello molto bella che prendi
in un oggetto R e trasmetterlo a un C ++
oggetto e si prende cura di tutto il
marshalling e conteggio dei riferimenti e
fa tutto questo per te o tu puoi bruto
forza qualcosa su cui potresti correre
molti server hanno un pacchetto chiamato
neve semplice rete di postazioni di lavoro
le persone usano solo per correre sono su molti
macchine si Scott
no, penso che per molte persone loro
impara le nostre statistiche sulla larghezza da
le statistiche 101 qui sono teoriche
concetto ed ecco l’ arte da implementare
almeno alcune persone che insegnano
in alcune impostazioni potresti averne di più
prima lezione teorica
in effetti la classe che sto insegnando in questo momento
è una classe di laurea che non usa R
ma le persone nella loro testa sono come un
studente universitario
giusto quindi se hai intenzione di imparare sono
lungo la strada presumo la più comune
riferimento è un libro di Venables Ripley
o Venables Penso che sia Venables sia a
springer verlag book Ho dimenticato il titolo
ma c’è un sacco di gente che li usa
sono stati alcuni libri che sono usciti di recente
c’è un libro chiamato la nostra inazione da
Manning the Motor Trend è arrivato alla trama
un esempio è venuto da quel libro, quindi il nostro
l’inazione sarebbe buona se lo sei
volendo imparare il nostro per l’analisi dei dati
e grafica la citazione che sta avendo
la sintassi pungente proveniva da un libro
l’ apprendimento automatico usando ora non lo è
un tutorial artistico è un apprendimento automatico
tutorial ma ti dà un mini
introduzione al nostro e poi ti mostra
come usarlo mentre vai bene
grazie mille
il titolo deriva da quanti di voi hanno visto
il film il buono il brutto e il cattivo
oh mia parola sono sorpreso che non abbia mai visto
fino al volo qui ho guardato
li ho almeno il mio portatile , almeno
ora aggiusta tutto bene, sì sì, così è
uno spaghetti western del 1966 il
Gli attori italiani hanno detto le loro battute
Italiani gli attori americani hanno detto il loro
linee in inglese e hanno appena soprannominato
la lingua opposta per ciascuno per il contratto di locazione
quindi ho pensato che se le cose andassero male solo
fai finta di parlare italiano
e doppiando me stesso in inglese tutto bene
va bene solo un po ‘di storia
su dove vengo dal mio
prospettiva come sono arrivato a R ho iniziato
Ho iniziato la mia carriera lavorando in matematica
l’università di sinistra è diventata un software
sviluppatore e più di recente vieni
fare il calcolo statistico così ho
una sorta di prospettiva di un outsider su
statistiche e la nostra lingua e te
so che ho scritto un po ‘di codice
e forse una dozzina di lingue e R ha
è stato il più difficile per me da non imparare
perché è intrinsecamente difficile
lingua se non sai niente e tu
raccogli R poi la impari ma se
conosci altre cose R è solo una specie di
strano e si tipo di vuole rendere
in qualcosa che non è ed è una specie di
difficile da imparare
non impari allo stesso modo di te
impara Perl o Java o qualcosa di te
giuste domande chiedi non va bene come faccio io
fai loop dove fanno i tipi di dati dove si trovano
come funzionano le classi non è così
imparare sono infatti che l’ informazione è
po ‘difficile da scoprire e un sacco di
le persone che usano sono più probabilmente
non potevo rispondere a quelle domande sono è a
linguaggio specifico del dominio e così hai
capire l’ apprendimento del dominio
puramente come una lingua è come imparare
PHP come lingua senza essere
interessato allo sviluppo web o
apprendimento sequel
come lingua va bene quali sono i dati
tipi in cui le strutture come questa I
non mi importa dei database che voglio
per imparare il seguito come lingua okay
questo è il tipo di cosa che sarebbe come
che era la mia mentalità di venire a sono a posto
Ho imparato i linguaggi di programmazione
prima ho intenzione di applicare il mio standard
modello e il nostro non si adattava
quindi qual è il nostro è open-source
linguaggio statistico e forse chiedendo
perché le statistiche hanno bisogno della propria lingua
ci arriveremo
è lo standard di fatto per le statistiche
ricerca ora non statistiche in generale
pratica non statistica ma più
ricerca statistica le persone che sono
facendo statistiche standard applicando
metodi ben noti a ben noti
i problemi probabilmente usano qualcos’altro
come forse SAS ma le persone che sono
fare ricerche sui metodi statistici
stiamo usando il nostro prodotto dalle s
lingua s per le statistiche che rende
più senso del nostro ciò che è il nostro stand
perché è solo un po ‘- – Immagino di si
crebbe dal progetto dal 1976 e
quindi rivisto in 88 da Bell Labs così
in realtà sì sì le lingue
influenzato dallo schema e da Fortran noi
pensa come sia strano
miscela come può essere influenzato da entrambi
il nostro è stato scritto per la prima volta in entrambi gli schemi
o Lisp, dimentico che e ho avuto questo
schema come la sintassi ma poi è diventato
imperativo avere compatibilità con s
che aveva più sintassi di ish di Fortran e così via
la nostra adottata e così che tu possa
vedi anche qualche influenza di Fortran come
gli indici di matrice iniziano da uno e le matrici
sono memorizzati da colonne come Fortran
e come Dennis Ritchie ha detto di C è
eccentrico viziato e un enorme successo I
direbbe rispetto a vedere è pari
più stravagante ancora più difetto
ma di grande successo nella sua nicchia va bene così
davvero quello che è ciò che ti ho dato
prima è solo una specie di standard
Articolo di Wikipedia questo è ciò che bla bla
bla, ma per spiegare qualcuno condividere un
citazione da un romanzo di fantascienza il
cantico per Leibowitz dice che non lo fai
avere un medico del suolo sei un’anima tu
avere un corpo temporaneamente
è la mia Epifania e ci provo
capire di cosa si tratta R è che R
non è una lingua R ha una lingua R è
un ambiente per fare statistiche
tipo di lavoro e ha una lingua è
un po ‘come VBA excel ha una lingua
ma studiando quella lingua in isolamento
volendo studiare VBA non programmare
Excel è solo un po ‘strano
o un altro esempio potrebbe essere Emacs Emacs
ha un linguaggio di programmazione Emacs Lisp
dialetto molto vecchio di Lisp che io non conosco
penso che molte persone adorino che sia pieno
linguaggio di programmazione che potresti scrivere a
Web server in Emacs Lisp Suppongo
anche se dubito che qualcuno ci abbia
non dovrei dire che non dovrebbe mai dirlo
aveva up di Damian lì a pensare bene fare
mi è piaciuto e lo farò solo
usando i personaggi con linee rette ora
ma penso che molte persone pensano
Emacs Lisp come il prezzo che si paga
raggiungere la funzionalità di Emacs
e penso che sono un po ‘come quella
enorme quantità di funzionalità e il
il nostro linguaggio è il modo in cui lo incollate
insieme, quindi, solo aiutare quanto è popolare il nostro
ecco un esempio da un’analisi dei dati
concorrenza che lingue usavano le persone
sono usciti i più popolari e se
noterai una sorta di sistemi mainstream
Mi dispiace, oh, lo è
va bene per tutti, quindi se tu
guarda da sinistra a destra devi essere carina
molto in basso, prima che tu diventi generale
lingue come Python nel
middle C ++ Java all’estremo, quindi persone
non stanno usando le lingue di sistema per farlo
analisi statistica non sono nemmeno
usando l’avviso delle lingue matematiche
Mathematica è piuttosto in fondo alla
elencare ora un altro punto dati questo era
da un sondaggio in bioinformatica in cui R
è uscito in cima ma dovrò dire
qualcosa per spiegare perché penso che sia Perl
classificato così alto qui significa bioinformatica
cose diverse a persone diverse
è un sottoinsieme di informatica per
alcuni è un sottoinsieme di statistiche per alcuni
è chi conosce gli altri così alcune persone
che vengono sotto l’ombrello di
la biostatistica sta facendo un sacco di file
munging così molte persone usano perl per
elaborare sequenze di DNA come stringhe e
Immagino sia quello che spiega
la popolarità di Perl qui le persone
chi sta facendo statistiche con dentro
la bioinformatica utilizza ampiamente
okay, quindi, com’è usare R bene?
ecco una citazione che usa effettivamente R è un po ‘
parenti a fumare l’inizio è
difficile quando ho mal di testa e anche
imbavagliare le prime volte ma nel lungo
eseguirlo diventa anche piacevole
avvincente ma profondo per quelli
disposti ad essere onesti c’è qualcosa
non completamente sano su di esso un altro
confronto da Drew Conway e John
miglia bianche il loro recente libro sulla macchina
l’apprendimento è unico e in qualche modo
sintassi pungente e tende ad avere un
curva di apprendimento più ripida rispetto ad altre
le lingue vanno bene così se se R ti fa venire il bavaglio
e ha sintassi pungente perché le persone
piace così come ha detto qualcuno di Google
la cosa migliore di R è che lo è
scritto da statistici
la cosa peggiore è che è così
scritto dagli statistici va bene così
capisci hai davvero bisogno di
capire un po ‘di cosa sia
statistiche che le stazioni dell’ascia sono come e
hanno una visione molto diversa del
mondo che i programmatori potrebbero essere
programmazione nel senso che sono
trascorrere le loro giornate di fronte a
monitorare digitando le cose e correndo
cose ma vedono il mondo molto
in modo diverso e se hai fatto un funzionale
Risonanza magnetica di un programmatore seduto a
computer e uno statistico seduti a
computer diverse parti del cervello
si accendono perché sono solo loro
vedute molto diverse del mondo e se
non hai familiarità con le tue statistiche
potrebbe essere sorpreso che sia in realtà
abbastanza diverso dalla matematica pensi bene
è solo un ramo della matematica ma davvero
è molto diverso come una specie di
espatriato matematico che vive in a
Dipartimento statistico , posso dirti che lo è
ha impiegato molto tempo per imparare il gergo se
conosci un diverso gergo per tutto
una prospettiva diversa su ciò che è
accettabile cosa non lo è e quindi non lo fai
vedi gli statistici usando lingue come
Mathematica la matematica molto popolare
dipartimenti come abbiamo visto sul precedente
scivoli
non tanto nelle statistiche e molto
le persone nelle statistiche apprendono sono come loro
impara le statistiche e se vai a cercare
per un libro su probabilmente troverai un
libro sulle statistiche di cui sono a conoscenza
solo un libro che menzionerò al
fine che è davvero circa il nostro come a
linguaggio di programmazione perché non lo è
come la maggior parte della gente pensa che sia la maggior parte delle persone
impara a fare concetti come
li imparano in statistica e così il
il nostro linguaggio di programmazione diventa
sinonimo dei concetti statistici
in una certa misura e diventa
impensabile usare qualsiasi altra cosa , quindi R è
un linguaggio specifico del dominio e
capire un linguaggio specifico del dominio
devi capire il dominio tu
inizia con il dominio non la lingua
quindi l’ alternativa al nostro non lo è
qualcosa come Python o C sharp o il
l’alternativa è SAS, quindi usare un mainstream
il linguaggio di programmazione è letteralmente fuori
la domanda per la maggior parte degli statistici se
non hanno usato R, ne useranno un altro
linguaggio statistico e spesso persone
chi lo sa, sa solo R e ama
il loro linguaggio specifico del dominio e loro
usalo per cose al di fuori del dominio che sono
certo qualcuno ha scritto un server web e
sono proprio come hanno scritto uno e
Emacs Lisp se io ragazzi ho risposto ad alcuni
domanda su Immagino con Stack Overflow
riguardo a R e hai detto bene che non usi mai R
per un server web sai che lo useresti
per questo e poi qualcuno ha risposto
bene ho implementato il web server
del tutto okay, quindi perché le statistiche
ho bisogno del suo DSL bene da una cosa
significa cosa piuttosto fondamentale che vuoi
funzioni statistiche per essere accessibili
se tu se potessi immaginare una casa a
lo statistico avrebbe usato C sharp
e dire scrivere math dot log ogni volta
devono prendere un logaritmo sarebbe
essere come dover usare il punto condizionale se
o punto del ramo o qualunque cosa nel vostro
il linguaggio diventa davvero un dato fastidioso
spesso arriva in tavoli e così tavolo
la manipolazione è fondamentale in
la lingua perché è qualcosa che
Succede così spesso operazioni vettoriali
tutto in statistica è vettorizzato
perché hai più osservazioni
hai osservazioni su più cose
più persone più gatti qualunque
e quelli sono i tuoi vettori, quindi tutto
i dati mancanti orientati a Viktor sono a
fatto di vita ha un vero set di dati
dati mancanti e quindi vuoi il tuo
linguaggio per gestirlo senza intoppi e non
solo oh mio Dio abbiamo dati mancanti
quello che stiamo andando a fare lanciare un
l’eccezione chiama la polizia di cui hai bisogno
ho bisogno di avere un linguaggio così
non dà di matto con i dati mancanti e
proprio come sai qualcosa come perla
ha modelli per testo munging R ha
modelli per compiti statistici comuni
e vedremo un po ‘questo in a
minuto
okay alcuni vantaggi del nostro Python
alle persone piace dire che arriva Python
batterie incluse che significa download
Python e hai tutto te
bisogno per iniziare bene che può essere
vero per alcuni tipi di Python
programmazione ma se lo stai facendo
calcolo statistico in Python non lo è
batterie incluse si inizia con
Il linguaggio Python usa matplotlib per
pianificando le cose su Syfy se ne hai bisogno
le funzioni matematiche usano ipython come a
shell in modo davvero che è più del
tipico ambiente Python per
il calcolo scientifico R non è così
ti apri hai tutto questo
cose in un gigantesco spazio dei nomi tutto
che probabilmente avrai bisogno è giusto
lì se stai facendo quel tipo di lavoro
se non stai facendo questo tipo di lavoro
ti chiedi perché mancano le cose
okay R è progettato per i dati interattivi
l’analisi non è stata progettata non è mai stata
inteso per sgranocchiare sai enorme
set di dati è molto significato per
qualcuno che inizia con il set di dati
gioca con me fammi vedere come questo
funziona cosa se pianifico questo contro questo
è una specie di nudismo in giro ed è così
molto bravo in questo
è un programma più facile di alcuni dei suoi
i concorrenti non hanno programmato SAS ma
da quello che capisco il linguaggio è
circa sofisticato come das batch
file in cui è davvero più di una macro
lingua piuttosto che una programmazione tradizionale
lingua in modo che spiegherebbe perché
persone che sono felici di ciò che viene
la spedizione con SAS utilizza persone SAS che lo sono
la necessità di scrivere le proprie cose tende a
gravitano verso sono ovviamente R è aperto
fonte che è un affare più grande di te
potrei immaginare come la mia istituzione
con il denaro contante possiamo acquistare software
ma è noioso comprare software
la cosa bella dell’open source no
risparmiare denaro sta evitando il
burocrazia di ottenere un ordine di acquisto
e lo stesso vale per tutto il mondo
ovunque tu abbia un collaboratore loro
può anche scaricarlo senza andare
attraverso la loro burocrazia okay e tu
potrei immaginare se hai a che fare con
con i dati tutto il tempo che vuoi
ottimizzare le operazioni come query e
filtraggio perché è qualcosa
andando a fare molto diventeremo lineari
regressione un paio di esempi qui in modo da
un esempio di come puoi lavorare con
i vettori nel nostro supponiamo che tu non abbia
elementi e vuoi impostarli
zero hai una bella notazione succinta
quello dice nell’array X quegli elementi
che sono gli RNA a metterli a zero o tu
avere espressioni più complicate all’interno
il tuo operatore di indice per il quale potresti dire
quegli elementi di X il cui corrispondente
l’indice in Y corrisponde al valore di y
che è più grande di sette selezionare quelli
cose e prendere il registro di loro così questo
il tipo di notazione ne consente alcuni
programmi succinti e stretti è anche
sconcertante se non l’hai mai visto
prima di allora un altro esempio lo sai
regressioni lineari compiti molto comuni in
statistiche hai alcuni dati che desideri
vedere bene che tipo di linea potrebbe avere
adattarsi quindi immaginiamo un equo
scenario complicato qui abbiamo tre
variabili indipendenti XY e Z che vogliamo
adattare un modello lineare a questi e noi
desidera includere alcuni termini di interazione
il che significa che non vogliamo solo x y & z come
variabili indipendenti anche noi vogliamo
considera XY o YZ ma non vogliamo
considera XZ per qualsiasi motivo, quindi noi
voglio costruire questo tipo di lineare
equazione vogliamo trovare il minimo
piazze adatte a ciò che vogliamo guardare
diversi residui e cose del genere
bene
è molto succinto nel nostro
la notazione di regressione lineare è analoga
alle espressioni regolari per il testo munging
uno statistico facciamo qualcosa di simile
tutte le volte che altre persone avrebbero grep su
qualcosa e quindi hai questo tipo di
sotto lingua nella lingua che
rende queste cose facili da esprimere così dentro
un po ‘più di dettaglio ti sta adattando questo
set di sei variabili così quando dice X
più y più Z al quadrato
questo non significa letteralmente prendere
interpretarlo come un polinomio e
quadrato non significa affatto
dice che questa è una scorciatoia per dire che voglio
includere le variabili XY e Z e I
Voglio anche includere prodotti di coppie
ma non voglio prendere in considerazione la XZ
questo è ciò che – alla fine significa e
implicitamente c’è un termine costante a così
Notazione succinta molto bella per a
lungo problema per descrivere mi dispiace in
SAS si farebbe ciò che, ma si sa, lo farà
sanguinamento va bene così ecco un semplice
esempio di regressione questo è alcuni dati su
farfalle guardando l’effetto di
tannini nella loro dieta su quanto bene
è cresciuto così una lettura in un file di testo che ha
i miei dati lo sto dicendo intestazione uguale
il vero significato interpreta la prima riga di
il file come intestazioni per le colonne quando
Dico allegare i dati che sto dicendo che voglio
usa le intestazioni delle colonne come variabili
nomi e dico solo per essere sicuro di avere
quello che penso di aver lasciato dire nomi e
stampa che va bene allora tutto il codice
necessario adattare una linea a quei dati
un modello equivale a costruire un modello lineare
regredire la crescita sui tannini e quando
lo ottieni se guardi il
riepilogo ottieni una quantità abbondante di dati
non si ottiene solo l’interpiano e
intercettandoti ottieni molto più di te
ottieni questi valori p per i coefficienti
ottieni dei residui ottieni tutti i tipi di
dettaglio che potresti voler vedere tutto
questo è contenuto in un oggetto così quando io
Dì riassunto sta stampando un oggetto ma
se fossi interessato solo a pezzi di
questo potrei dire il nostro modello di dollaro
usi del simbolo del dollaro dove potresti
aspettatevi un modello simile a un punto come questo
o quello per ottenere due pezzi di questo oggetto
che rappresenta l’uscita di regressione
ora un altro esempio guarda alcuni dati
imposta quello che viene con il nostro quando tu
scarica il nostro viene fornito con diversi dati
imposta questi sono un po ‘ come il
equivalente di Microsoft Northwind
database sai che c’è qualche standard
set di dati che le persone usano negli esempi
e uno è questo dati di tendenza del motore da
1974 guardando tra le altre cose
chilometraggio e peso e se qualcosa
ha la trasmissione manuale o automatica così
puoi chiamare aiuto su questo set di dati e
questo per mostrarti una cosa come questa e
se guardi i dati ce ne sono dodici
Colonne le due che ci interessano
eravamo in tre ci interessa il peso
e il chilometraggio del gas e se il
la trasmissione è standard o automatica così
ecco un esempio di un’analisi di
questi dati in modo da avere una linea per
trasmissioni automatiche la linea rossa
la linea bluastra più ripida per il manuale
trasmissioni non solo si adattano alle linee
ai dati che tracciate i dati questi grigi
le bande intorno alle linee rappresentano
l’incertezza diventa grigia
sfondo con griglia bianca in modo che
la griglia è lì è visibile ma lo è
non reale non è vero ovvio che tipo di
sfuma sullo sfondo no
oscuro
dati ed ecco il codice per la produzione
che il codice è molto dichiarativo, quindi io
dillo quali dati voglio che io stia usando a
libreria ggplot2 Hadley Wycombe è un
biblioteca molto carina , lo sto raccontando
la trasmissione è un fattore che significa che è
alcuni sono alcuni dati che sto trattando come
categorie quando vedo uno 0 e un 1 nel
file che non significa nessuna trasmissione
o 1 trasmissione significa che questi sono due
categorie che sto guardando così dentro
la routine tramando dico che voglio
per tracciare il peso in miglia per gallone da
il set di dati auto MT e voglio colorare
codice il voglio codice colore i miei dati
e mostrarlo come punti che vado ad adattare a
modello lineare che è il LM X tilde Y
dice che voglio tracciare y come funzione di X
e così via, ok, alcune caratteristiche linguistiche
sono digitato dinamicamente sì di prima classe
le funzioni hanno chiusure in modo da poter passare a
funzione come argomento di una funzione
quel genere di cose ha un oggetto
il sistema ha infatti due sistemi di oggetti
uno chiamato s3 e uno chiamato s4 mentre
s3 il vecchio sistema è una specie di
perlato
dove hai una lista e la benedici
in un oggetto è molto permissivo
conveniente loosey-goosey l’oggetto s4
il sistema è più rigoroso dove tu tu
devo dire quali sono i tuoi campi e se
digiti qualcosa che non è un campo
riceverai un avvertimento bene che non è il
caso con il vecchio sistema nessuno dei due
sta andando via in qualsiasi momento presto
la maggior parte degli oggetti usa s3 il
il vecchio sistema s4 è più recente e funziona meglio
con interfaccia con le altre lingue
come C
sia nell’uso comune che nel vecchio sistema
è ancora più popolare, infatti, se tu
guarda la guida di stile di Google per il nostro
dicono di evitare s per le classi, quindi R è
orientato al vettore per meglio o peggio
ci sono solo vettori nella lingua
non ci sono numeri se si digita un 7
questo è un vettore di lunghezza 1 contenente
il numero 7 quindi tutto è un vettore
nel bene e nel male, meglio è possibile
è molto conveniente dire semplicemente X plus
y e somma le componenti in peggio
eppure quando ottieni qualcosa che dici bene
è questa cosa un numero che intendo cioè è
avrà lunghezza 1 o ce l’ha
legato più di un modo come dovrei
trattalo e tutto è passato
valore che può ridurre gli errori ma è così
può anche portare a molte copie e
tutto è annullabile perché abbiamo detto
sai che è importante in una statistica
linguaggio per avere la capacità di trattare
con i dati mancanti che puoi gestire
dati mancanti in due modi in R hai un
in ae hai un null quindi un in a
significa che non conosco questo ha un valore che
ha senso solo che non so cosa che
il valore è quindi hai una sorta di questi tre
logica di stato puoi anche avere uno sconosciuto
Mi dispiace che tu abbia anche un null
significa far finta che io non esista è come
la battuta di Harry Potter dove dice
Sarò nella mia stanza senza fare rumore e
fingendo di non esistere quindi se tu
qualche contesto quando vedi null il
la funzione lo ignorerà semplicemente come se fosse
non lì ma se ne vedi uno dentro
dipende da quello che hai detto così anch’io
ignora na s o li prendo in
account
va bene così un esempio di vettorizzazione
supponiamo di voler generare un milione
variabili casuali campioni casuali casuali
con una distribuzione normale fa la nostra norma
che così X contiene un milione di random
campioni da uno standard normale e poi
io
fare lì qualche idea di pre
allocare un vettore di tutto ciò
hai bisogno è buono il nostro stile ma lo farebbe
sii povero stile C perché sta perdendo
memoria quindi se sei un programma C sei
venendo al nostro si potrebbe dire bene questo
questo è un brutto modo di fare le cose
sì è il codice stretto, ma ho intenzione di essere
intelligente sto per generarne uno a caso
valore alla volta e aggiungilo alla mia somma
e ho intenzione di salvare allocando tutto
questa memoria bene il secondo esempio funziona
25 volte più lento del primo esempio
quindi, cosa è cattiva pratica e R è buona
pratica e C in lingue come quella
e viceversa, quindi le persone che ho lavorato
con chi ha imparato il nostro primo e poi
vieni in una lingua più nuova in cui scrivono
il primo esempio salva tutto
prima che facciano qualcosa con esso e dica
no no non devi farlo qui dentro
il nostro non devi farlo se non tu
quasi doverlo fare perché è di più
efficiente, perché i loop sono molto
inefficiente e siete in qualsiasi momento ti lamenti
sull’efficienza del nostro primo
cosa qualcuno ti dice bene
ti sei sbarazzato dei tuoi loop for
il che è davvero strano da pensare
di un linguaggio di programmazione scoraggia
per loop intendo non solo a volte te
non ne hanno bisogno ma davvero no
voglio anche usarli se puoi evitare
va bene quindi alcuni degli inconvenienti sono
è lento quindi basta dare un numero magari a
cento volte più lento del C ++ ma questo
varia se hai codice scritto in modo ingenuo
forse è un migliaio di volte più lento o
forse è due volte più lento che può variare
tremendamente a seconda di quello che sei
fare molto del nostro è scritto in C in
il back-end e se stai passando a
molto lavoro da fare per vederlo
mastica prima di sputarlo indietro
potrebbe essere abbastanza efficiente ma se molto
del lavoro sta realmente accadendo nel nostro
potrebbe essere uno strumento molto inefficiente
il supporto è un vero problema, se lo sei
venuta
dallo studio visivo e questo è il tuo
aspettativa di quali strumenti linguistici
dovrebbe essere il nostro circa 20 anni indietro
sta iniziando a prendere alcuni degli strumenti
che abbiamo preso per scontato circa a
un paio di decenni fa la sicurezza è nostra
progettato per l’uso interattivo non lo è
progettato per la produzione e questi sono
intenzione ci sono un sacco di cose
esso consente di ottenere via con partendo dal presupposto che
stai interagendo in modo interattivo con un dato
imposta e saprai se l’hai fatto
qualcosa di sbagliato, quindi chi sono io per lamentarmi
quindi è quello che hai detto, immagino sia così
cosa volevi dire e ti lascerò fare
quindi se vuoi assegnare un valore a uno
delle parole chiave delle lingue, credo
questo è ciò che intendevi per un problema
tutto questo è gente che usa il nostro al di fuori
il suo punto debole sono solo un sacco di persone
lo so sono così lo usano per qualsiasi cosa
compito hanno tutto bene quindi se vuoi
per saperne di più su alcuni dei più scuri
punti del nostro c’è un rapporto chiamato il
il nostro inferno che dice se credi
sei nel nostro inferno ecco la tua guida
quindi è 126 pagine è un po ‘modellato
sull’Inferno di Dante c’è una specie di
opere d’arte medievale in esso e così via
ma ha molte informazioni dettagliate
su angoli strani del nostro e come trattare
con loro giusto così il libro che desidero
qualcuno scriverà è il buono
parti voglio dire se hai familiarità con
JavaScript le parti buone questo è un
ottimo libro che Crockford prende
JavaScript e ha un occhio molto freddo
vista di esso queste sono caratteristiche che sono
solo male ma dentro JavaScript c’è un
Linguaggio veramente bello ed ecco cosa
penso che sia qui il sottoinsieme che io
pensare è il buon linguaggio dentro
JavaScript vorrebbe che qualcuno scrivesse
un tale libro per i nostri ci sono molti
le cose che stanno davvero bene lì
le nostre mine terrestri nelle ARDS come la loro terra
miniere in JavaScript sono le lingue
simile in quel modo in cui la gente usa
entrambe le lingue prima di impararle e
c’è qualche insidia per gli incauti
quindi ogni volta che parlo di questo libro io
devo mostrare questa immagine c’è il
JavaScript a sinistra e poi c’è
le parti buone del piccolo libro su OK
quindi alcune lezioni dalla nostra analisi dei dati
è molto diverso dal sistema
programmazione più diversa di te
potrebbe pensare
la gente si sopporterà molto per ottenere
il loro lavoro è fatto se dici che lo fai notare
alcuni dei problemi con il nostro che ha
questa stranezza ha questo fallito
silenziosamente questo non funziona la gente dice
sì ma io devo avere il mio lavoro mi
non importa quanto sia elegante la tua programmazione
il linguaggio è che non posso fare il mio lavoro
con esso quindi non ho intenzione di considerarlo
e le persone useranno uno strumento familiare se
tutto sommato possibile, quindi alcune risorse
per il nostro puoi scaricare il nostro dal
il nostro progetto il nostro – org del progetto che ho
scritto una guida che è una sorta di a
i programmatori vedono i nostri se l’hai fatto
scritto C ++ Java Perl questi comuni
lingue questo si dice l’alcuni dei
cose che potresti trovare sorprendenti
quando guardi per la prima volta il nostro e questo è
il libro di cui ho parlato prima è l’unico
prenotare che io sappia che tratta il nostro come un
il linguaggio di programmazione è l’arte del nostro
programmando questa è una stampa senza amido
libro che è uscito forse un anno fa ho
ho dimenticato che è abbastanza recente, ma è un
buona introduzione se vuoi una specie di a
i programmatori osservano gli occhi di noi e dei nostri
Twitter c’è un account nostro Lang
suggerimento l’ ho iniziato qualche tempo fa con
un consiglio al giorno sul nostro e poi io
consegnato ad altre persone che
sapeva di più sul nostro per lasciarli correre
hanno continuato a crescere bene così
questo è tutto da parte mia
domande
sì signore destra il problema non è binaria
compatibilità si può ottenere altro
lingue da chiamare o chiamare
altra lingua, solo il problema è di più
compatibilità culturale per esempio
stai costruendo un’interfaccia c-sharp
in cima al nostro dove lo si passa in un vettore
o forse peggio il contrario
quindi stai scrivendo C C ++ e ti bypassa
un vettore R bene questo è un vettore di
numeri che presumi abbia numeri in esso
beh non necessariamente forse ha nas
forse ha valori nulli
quindi se qualcuno dice che l’ho scritto
codice è semplicemente fantastico da usare
fare attenzione a questo tipo di cose o
per esempio cosa fa su un errore
beh forse si blocca e va bene se
stai esplorando interattivamente un dato
non va bene su un server sì, quello che era
la domanda è Archer
incompleto sì sì sì ok così dentro
il nostro mondo
puoi avvolgere cose che sono state un modulo
e distribuirlo in quel modo e loro
in realtà hanno un bel modulo
sistema se il tuo codice è scritto in C ma
avvolto in R verrà compilato
installare e tutto solo tipo di
funziona ma è all’interno del nostro mondo se
non è accettabile che tu voglia
interfaccia con il resto del mondo o tu
vogliono più prestazioni di quelle in più
difficile quindi se hai bisogno di accelerare o
un modo per farlo è riscrivere le cose
in C ++ forse scrivi poi riscrivi il
intera cosa o forse strategicamente
riscrivi un hotspot sì, circa un anno
fa ho esaminato come posso accelerare il nostro
e ho letto bene tutti questi documenti
sai a volte se inverti il
ordine di queste due cose su una luna piena
potrebbe essere il 10% più veloce e l’unico
modo affidabile che conosco per migliorare il
l’esecuzione di R è di rimuoverlo da R
e ci sono un paio di modi per farlo
c’è un’interfaccia C
dove puoi chiamare C o Fortran c’è
un’interfaccia di livello superiore attraverso questo
modulo chiamato il nostro CPP che ti dà un
Interfaccia di alto livello molto bella che prendi
in un oggetto R e trasmetterlo a un C ++
oggetto e si prende cura di tutto il
marshalling e conteggio dei riferimenti e
fa tutto questo per te o tu puoi bruto
forza qualcosa su cui potresti correre
molti server hanno un pacchetto chiamato
neve semplice rete di postazioni di lavoro
le persone usano solo per correre sono su molti
macchine si Scott
no, penso che per molte persone loro
impara le nostre statistiche sulla larghezza da
le statistiche 101 qui sono teoriche
concetto ed ecco l’ arte da implementare
almeno alcune persone che insegnano
in alcune impostazioni potresti averne di più
prima lezione teorica
in effetti la classe che sto insegnando in questo momento
è una classe di laurea che non usa R
ma le persone nella loro testa sono come un
studente universitario
giusto quindi se hai intenzione di imparare sono
lungo la strada presumo la più comune
riferimento è un libro di Venables Ripley
o Venables Penso che sia Venables sia a
springer verlag book Ho dimenticato il titolo
ma c’è un sacco di gente che li usa
sono stati alcuni libri che sono usciti di recente
c’è un libro chiamato la nostra inazione da
Manning the Motor Trend è arrivato alla trama
un esempio è venuto da quel libro, quindi il nostro
l’inazione sarebbe buona se lo sei
volendo imparare il nostro per l’analisi dei dati
e grafica la citazione che sta avendo
la sintassi pungente proveniva da un libro
l’ apprendimento automatico usando ora non lo è
un tutorial artistico è un apprendimento automatico
tutorial ma ti dà un mini
introduzione al nostro e poi ti mostra
come usarlo mentre vai bene
grazie mille
Please follow and like us: