1 00:00:00,000 --> 00:00:05,691 2 00:00:05,691 --> 00:00:07,690 CONNOR HARRIS: Still I ajatella jännittäviä video 3 00:00:07,690 --> 00:00:12,570 tuotettu ammatillinen konsultointi joka käyttää R paljon työssään. 4 00:00:12,570 --> 00:00:16,329 >> KERTOJA: mitä takana tilastot, analytiikan, ja visualisointeja 5 00:00:16,329 --> 00:00:19,770 että nykypäivän kirkkain tiedot tutkijat ja yritysjohtajat luottaa 6 00:00:19,770 --> 00:00:22,012 tehdä voimakas päätöksiä? 7 00:00:22,012 --> 00:00:23,540 Et voi aina nähdä sen. 8 00:00:23,540 --> 00:00:24,790 Mutta se on olemassa. 9 00:00:24,790 --> 00:00:29,460 Sitä kutsutaan R, avoimen lähdekoodin r-- tilastollinen ohjelmointikieli 10 00:00:29,460 --> 00:00:32,630 että tiedot asiantuntijat maailmassa liikakäyttöön kaikesta 11 00:00:32,630 --> 00:00:35,350 alkaen kartoitus laajoja sosiaalisia ja markkinointi suuntauksia verkossa 12 00:00:35,350 --> 00:00:39,210 kehittämään taloudellisia ja ilmasto malleja, jotka auttavat ajaa taloutemme 13 00:00:39,210 --> 00:00:40,780 ja yhteisöjä. 14 00:00:40,780 --> 00:00:44,910 >> Mutta mitä on R ja mistä R aloittaa? 15 00:00:44,910 --> 00:00:48,620 No alunperin, R aloitti täällä kaksi professoria 16 00:00:48,620 --> 00:00:51,950 joka halusi paremman tilastollisen alustan opiskelijoille. 17 00:00:51,950 --> 00:00:56,030 Joten he loivat yksi mallinnettu jälkeen tilastokieltä S. 18 00:00:56,030 --> 00:01:00,480 Ne, yhdessä monien muiden, pidetään työtä ja käyttää R, 19 00:01:00,480 --> 00:01:05,489 työkalujen luominen R ja löytää uusia sovelluksia R päivittäin. 20 00:01:05,489 --> 00:01:07,750 >> Tämän ansiosta on maailmanlaajuinen yhteisö vaivaa, 21 00:01:07,750 --> 00:01:11,850 R jatkoi kasvuaan tuhansia käyttäjien luoman kirjastot rakennettu 22 00:01:11,850 --> 00:01:15,500 parantaa R-laitteiden toiminnot ja väkijoukon alkuperää laadunvalvonta 23 00:01:15,500 --> 00:01:19,740 ja tukea eniten tunnustettu teollisuuden johtajia kaikilla aloilla että 24 00:01:19,740 --> 00:01:25,040 käyttää R. joka on suuri, koska R on paras, mitä se tekee. 25 00:01:25,040 --> 00:01:28,540 Orastava asiantuntijat nopeasti ja helposti tulkita, vuorovaikutuksessa, 26 00:01:28,540 --> 00:01:33,790 ja visualisoida tietoja, jotka osoittavat niiden nopeasti kasvavaan R käyttäjiä ympäri maailman 27 00:01:33,790 --> 00:01:36,380 ja miten open source R jatkuu muoto 28 00:01:36,380 --> 00:01:39,340 tulevaisuus tilastotietojen analysointi ja tietojen tiedettä. 29 00:01:39,340 --> 00:01:44,660 30 00:01:44,660 --> 00:01:47,710 >> CONNOR HARRIS: OK, suuri. 31 00:01:47,710 --> 00:01:50,360 Joten oma esittely on hieman enemmän selvin päin. 32 00:01:50,360 --> 00:01:54,380 Se ei liity niin paljon jännittävä taustamusiikkia. 33 00:01:54,380 --> 00:01:59,160 Mutta kuten näitte video, R on eräänlainen yleiskäyttöisen ohjelmointikielellä. 34 00:01:59,160 --> 00:02:03,720 Mutta se on luotu enimmäkseen tilastollisiin työtä. 35 00:02:03,720 --> 00:02:07,980 >> Joten se on suunniteltu tilastoja, tietojen analysointia, tiedon louhintaan. 36 00:02:07,980 --> 00:02:12,420 Ja jotta voit nähdä tämän paljon suunnitteluun liittyviä valintoja että päättäjät R 37 00:02:12,420 --> 00:02:13,320 tehty. 38 00:02:13,320 --> 00:02:15,472 Se on suunniteltu pitkälti, ihmisiä, jotka eivät ole 39 00:02:15,472 --> 00:02:17,930 asiantuntijoiden ohjelmointi, joka ovat vain poimien ohjelmointi 40 00:02:17,930 --> 00:02:23,460 sivussa, jotta he voivat tehdä työnsä yhteiskuntatieteissä tai tilastoissa 41 00:02:23,460 --> 00:02:25,440 tai mitä tahansa. 42 00:02:25,440 --> 00:02:27,850 >> Se on paljon hyvin merkittäviä eroja C. 43 00:02:27,850 --> 00:02:33,200 Mutta syntaksi ja paradigmat että se käyttää ovat suurin piirtein samat. 44 00:02:33,200 --> 00:02:36,830 Ja sinun pitäisi tuntea aika paljon kotona suoralta kädeltä. 45 00:02:36,830 --> 00:02:38,520 Se on välttämätöntä kieli. 46 00:02:38,520 --> 00:02:40,260 >> Älä murehdi liikaa, että jos et tiedä aikavälillä. 47 00:02:40,260 --> 00:02:42,676 Mutta on ero välillä välttämätöntä, deklaratiivisen, 48 00:02:42,676 --> 00:02:43,810 ja toimiva. 49 00:02:43,810 --> 00:02:47,600 Välttämätöntä vain tarkoittaa teet lausunnot ovat pohjimmiltaan komentoja. 50 00:02:47,600 --> 00:02:52,340 Ja sitten tulkki tai tietokone seuraa niitä yksitellen. 51 00:02:52,340 --> 00:02:56,630 Se on heikosti kirjoitettu, on ei tyyppi ilmoitusten R. 52 00:02:56,630 --> 00:02:59,130 >> Ja sitten linjat erityyppisten 53 00:02:59,130 --> 00:03:03,920 ovat hieman löysä kuin ne ovat C, esimerkiksi. 54 00:03:03,920 --> 00:03:06,450 Ja kuten sanoin olemassa hyvin laajat tilat 55 00:03:06,450 --> 00:03:15,610 piirtämistä, tilastollisia analyysi, tiedon louhintaan. 56 00:03:15,610 --> 00:03:19,540 Nämä ovat molemmat rakennettu kieli ja, kuten video sanoi, 57 00:03:19,540 --> 00:03:23,680 tuhansia kolmannen osapuolen kirjastoja, jotka voit ladata ja käyttää maksutta 58 00:03:23,680 --> 00:03:25,340 hyvin löysä lupaehtoja. 59 00:03:25,340 --> 00:03:28,800 60 00:03:28,800 --> 00:03:31,500 >> Niin yleensä, Suosittelen että katsotte näitä kaksi kirjaa 61 00:03:31,500 --> 00:03:34,610 jos aiot työskennellä R. One niistä on virallinen R aloittelijan 62 00:03:34,610 --> 00:03:35,110 opas. 63 00:03:35,110 --> 00:03:38,660 Se ylläpitää ydin kehittäjät R. 64 00:03:38,660 --> 00:03:42,400 Voit ladata sen uudelleen, vapaa lataa ja laillisesti siihen linkin siellä. 65 00:03:42,400 --> 00:03:45,430 66 00:03:45,430 --> 00:03:49,869 Kaikki nämä diat eivät mene ylös internetissä, CS50 verkkosivuilla 67 00:03:49,869 --> 00:03:50,660 Tämän jälkeen on tehty. 68 00:03:50,660 --> 00:03:53,690 Joten ei tarvitse kopioida asioita alas kuumeisesti. 69 00:03:53,690 --> 00:03:56,800 >> Toinen on oppikirja Cosma Shalizi, 70 00:03:56,800 --> 00:04:00,100 joka on tilastojen professori Carnegie Mellon, nimeltään Advanced Data 71 00:04:00,100 --> 00:04:02,160 Analyysi Alkeis näkökulmasta. 72 00:04:02,160 --> 00:04:04,010 Tämä ei ole ensisijaisesti R kirja. 73 00:04:04,010 --> 00:04:07,130 Se on tilastojen kirjan ja se on tietojen analysointi kirja. 74 00:04:07,130 --> 00:04:11,990 Mutta se on hyvin saatavilla ihmisille, jotka on hiukkasen tilastojen tietoa. 75 00:04:11,990 --> 00:04:13,750 >> En ole koskaan tehnyt muodollisen kurssi. 76 00:04:13,750 --> 00:04:17,269 Tiedän vain palasia eri Allied aiheista 77 00:04:17,269 --> 00:04:18,579 että olen ottanut kursseja. 78 00:04:18,579 --> 00:04:21,839 Ja pystyin ymmärtämään se aivan hyvin. 79 00:04:21,839 --> 00:04:25,630 >> Kaikki luvut R. Ne on valmistettu T 80 00:04:25,630 --> 00:04:30,280 ja niillä on myös koodi listauksia allekkain luku kertoa 81 00:04:30,280 --> 00:04:33,270 miten teet kukin hahmo R-koodia. 82 00:04:33,270 --> 00:04:37,400 Ja se on erittäin hyödyllinen, jos yrität jäljitellä 83 00:04:37,400 --> 00:04:38,650 jotkut hahmo näet kirjan. 84 00:04:38,650 --> 00:04:47,840 >> Ja uudelleen lataa stat.cmu.edu/cshalizi/ Anteeksi, 85 00:04:47,840 --> 00:04:50,230 että olisi slash tilde cshalizi. 86 00:04:50,230 --> 00:04:53,150 Teen varmasti oikein, että kun virallinen diat nousevat. 87 00:04:53,150 --> 00:04:57,000 / ADAfaEPoV joka on vain kirjainlyhenne kirjan nimi. 88 00:04:57,000 --> 00:04:59,850 89 00:04:59,850 --> 00:05:02,500 >> Joten yleinen caveats-- R on paljon ominaisuuksia. 90 00:05:02,500 --> 00:05:05,331 Olen vain menossa pystyä kattamaan pinta paljon asioita. 91 00:05:05,331 --> 00:05:08,580 Myös ensimmäisen osan Seminaarin tulee olemaan jotain tietojen kaatopaikka. 92 00:05:08,580 --> 00:05:11,437 Olen melko pahoillani siitä. 93 00:05:11,437 --> 00:05:13,770 Periaatteessa, aion tutustuttaa sinut paljon asioita 94 00:05:13,770 --> 00:05:15,350 suoralta kädeltä, menossa niin nopeasti kuin mahdollista. 95 00:05:15,350 --> 00:05:17,058 Ja sitten pääsemme hauska osa, joka on 96 00:05:17,058 --> 00:05:20,570 demo, jossa voin näyttää sinulle kaiken että olemme puhuneet ruudulla. 97 00:05:20,570 --> 00:05:23,321 Ja voit pelata noin itse. 98 00:05:23,321 --> 00:05:26,070 Joten siellä tulee olemaan paljon teknisiä juttuja sinkoutua täällä. 99 00:05:26,070 --> 00:05:28,060 Älä ole huolissasi kopiointi kaiken, alas. 100 00:05:28,060 --> 00:05:31,740 Koska, voit saada kaikki tavaraa CS50 sivuilla myöhemmin. 101 00:05:31,740 --> 00:05:37,780 Ja B, se ei ole todella niin tärkeää muistaa tämä päässä dioja. 102 00:05:37,780 --> 00:05:40,462 Se on enemmän tärkeää, että saat jotkut intuitiivinen laitoksen kanssa 103 00:05:40,462 --> 00:05:44,220 ja joka tulee vain leikkimisestä. 104 00:05:44,220 --> 00:05:45,720 >> Joten miksi käyttää R? 105 00:05:45,720 --> 00:05:49,440 Periaatteessa, jos sinulla on projekti, joka liittyy kaivos suuria tietomääriä, tiedot 106 00:05:49,440 --> 00:05:52,664 visualisointi, te pitäisi käyttää R. Jos olet 107 00:05:52,664 --> 00:05:55,830 tekee monimutkainen tilastolliset analyysit, että olisi vaikea Excel, 108 00:05:55,830 --> 00:05:58,010 esimerkiksi, se olisi myös good-- myös 109 00:05:58,010 --> 00:06:00,506 jos teet tilastollisia analyysi, joka on automatisoitu. 110 00:06:00,506 --> 00:06:02,130 Sanotaan olet ylläpitää verkkosivuilla. 111 00:06:02,130 --> 00:06:06,320 Ja haluat lukea palvelimen loki joka päivä ja koota joitakin lista, 112 00:06:06,320 --> 00:06:10,320 kuten alkuun maissa, käyttäjät tulevat, 113 00:06:10,320 --> 00:06:15,100 jotkut yhteenveto tilastoja siitä, kuinka kauan he viettävät sivustossasi tai mitä tahansa. 114 00:06:15,100 --> 00:06:16,910 Ja haluat käyttää tätä joka päivä. 115 00:06:16,910 --> 00:06:20,280 >> Nyt jos teet tämän Excelissä, sinun täytyy mennä oman palvelimen loki, 116 00:06:20,280 --> 00:06:23,490 tuoda sen osaksi Excel-tietoja taulukkolaskenta, 117 00:06:23,490 --> 00:06:24,910 suorittaa kaikki analyysin käsin. 118 00:06:24,910 --> 00:06:27,100 R, voit vain kirjoittaa yhden käsikirjoituksen. 119 00:06:27,100 --> 00:06:29,520 Aikataulu se ajaa joka päivä käyttöjärjestelmästä. 120 00:06:29,520 --> 00:06:33,657 Ja sitten joka ilta klo 02:00, tai kun ajoittaa sen, 121 00:06:33,657 --> 00:06:35,990 se näyttää läpi Internet-liikenne kyseiselle päivälle. 122 00:06:35,990 --> 00:06:39,010 Ja sitten seuraavana päivänä, luultavasti on tämä kiiltävä, uusi raportti 123 00:06:39,010 --> 00:06:41,710 tai mitä tahansa kaikkien tiedot pyysit. 124 00:06:41,710 --> 00:06:44,960 125 00:06:44,960 --> 00:06:50,217 >> Joten periaatteessa R on Cisco ohjelmointi vs. Cisco analyysi. 126 00:06:50,217 --> 00:06:51,050 Alustava on tehty. 127 00:06:51,050 --> 00:06:53,104 Mennään osaksi todellisia asioita. 128 00:06:53,104 --> 00:06:55,020 Joten on kolme todellisia nimikkeet kielellä. 129 00:06:55,020 --> 00:06:56,120 On numeerinen tyyppi. 130 00:06:56,120 --> 00:07:01,250 On tavallaan ero kokonaislukuja ja kelluvat pistettä, 131 00:07:01,250 --> 00:07:02,769 mutta ei oikeastaan. 132 00:07:02,769 --> 00:07:04,560 On merkki tyyppi, joka on jousille. 133 00:07:04,560 --> 00:07:07,100 Ja siellä on looginen tyyppi, joka on Booleans. 134 00:07:07,100 --> 00:07:11,080 >> Ja voit muuntaa tyypit käyttää näitä toimintoja numeerinen, 135 00:07:11,080 --> 00:07:15,220 merkki, kuin looginen. 136 00:07:15,220 --> 00:07:17,510 Jos soitat, esimerkiksi, kuin numeerinen merkkijono, 137 00:07:17,510 --> 00:07:20,030 se yrittää lukea, että merkkijono numerona, samalla tavalla 138 00:07:20,030 --> 00:07:25,897 että A2I ja scanf tehdä, ja C. Jos soitat kuin numeerinen totta vai tarua 139 00:07:25,897 --> 00:07:26,980 se muuntaa 1 tai 0. 140 00:07:26,980 --> 00:07:29,110 Jos soitat kuin merkki mitään se tulee 141 00:07:29,110 --> 00:07:32,550 muuntaa sen osaksi string edustus. 142 00:07:32,550 --> 00:07:34,990 >> Ja sitten on vektoreita ja matriiseja. 143 00:07:34,990 --> 00:07:37,580 Joten vektorit ovat pohjimmiltaan 1 ulotteinen taulukot. 144 00:07:37,580 --> 00:07:40,600 Ne ovat mitä me kutsumme taulukot C. Matriisit, 2 ulotteinen taulukot. 145 00:07:40,600 --> 00:07:42,350 Ja sitten korkeampi ulotteinen taulukot voit 146 00:07:42,350 --> 00:07:48,560 on 3, 4, 5 mitat tai mitä tahansa numeeristen arvojen, merkkijonojen, 147 00:07:48,560 --> 00:07:52,860 ja loogiset arvot. 148 00:07:52,860 --> 00:07:55,380 >> Sinulla on myös luettelot, jotka ovat eräänlainen assosiatiivisia array. 149 00:07:55,380 --> 00:07:57,390 Saan tuohon vähän. 150 00:07:57,390 --> 00:07:59,390 Joten yksi tärkeä asia että matkoja ihmiset ylös R 151 00:07:59,390 --> 00:08:01,470 on se, että ei ole olemassa todellinen, puhdas Atomic tyyppejä. 152 00:08:01,470 --> 00:08:05,870 Ei ole todellista eroa numero, kuten numeerinen arvo, 153 00:08:05,870 --> 00:08:07,920 ja luettelo numeerisia arvoja. 154 00:08:07,920 --> 00:08:12,370 Numeerisia arvoja ovat todella sama kuin vektorit, joiden pituus on 1. 155 00:08:12,370 --> 00:08:14,959 Ja tämä on useita merkittäviä vaikutuksia. 156 00:08:14,959 --> 00:08:17,500 Yksi, se tarkoittaa, että voit tehdä asioita hyvin helposti, joihin 157 00:08:17,500 --> 00:08:21,037 kuten lisäämällä numeron vektori. 158 00:08:21,037 --> 00:08:23,120 R pohjimmiltaan kuva mitä tarkoitat. 159 00:08:23,120 --> 00:08:24,610 Ja saan sen, että toinen. 160 00:08:24,610 --> 00:08:27,930 Se tarkoittaa myös sitä, että ei ole mitään tapaa tyyppi checker-- siinä määrin, 161 00:08:27,930 --> 00:08:30,530 että jotain olemassa R-- kertoa 162 00:08:30,530 --> 00:08:33,780 kun olet kulunut yksi arvo kun se odottaa array tai päinvastoin. 163 00:08:33,780 --> 00:08:39,159 Ja jotka voivat aiheuttaa outoa ongelmat, joita Törmäsin kun 164 00:08:39,159 --> 00:08:42,252 Käytin R aikana minun kesätyötä. 165 00:08:42,252 --> 00:08:43,710 Ja ei ole sekatyyppinen taulukot. 166 00:08:43,710 --> 00:08:46,543 Joten et voi olla array olivat ensimmäinen elementtejä on, en tiedä, 167 00:08:46,543 --> 00:08:49,332 merkkijono "John" ja Toinen tekijä on numero 42. 168 00:08:49,332 --> 00:08:52,540 Jos yrität tehdä sitä, niin saat kaikki vain muunnetaan merkkijono. 169 00:08:52,540 --> 00:08:54,760 Joten meillä on merkkijono John, merkkijono 42. 170 00:08:54,760 --> 00:08:58,250 171 00:08:58,250 --> 00:09:02,025 >> Niin epätavallinen syntaktinen features-- eniten R syntaksi on hyvin samanlainen C. 172 00:09:02,025 --> 00:09:04,690 On olemassa muutamia tärkeitä eroja. 173 00:09:04,690 --> 00:09:05,620 Kirjoittaminen on hyvin heikko. 174 00:09:05,620 --> 00:09:07,360 Niin ei ole muuttuvia julistuksia. 175 00:09:07,360 --> 00:09:12,670 Tehtävä käyttää outo virhe operaattori alle väliviivaa. 176 00:09:12,670 --> 00:09:15,340 Kommentit ovat hash merkki. 177 00:09:15,340 --> 00:09:19,230 Oletan nyt päivää kutsumme sitä hashtag vaikka se ei oikeastaan ​​accurate-- ei 178 00:09:19,230 --> 00:09:21,810 kaksoiskauttaviivalla. 179 00:09:21,810 --> 00:09:24,710 >> Modulaarinen tähteet ovat kanssa %% merkkejä. 180 00:09:24,710 --> 00:09:30,172 Kokonaislukujaolla on kanssa% /% mikä on erittäin vaikea lukea, kun se on ennustetaan 181 00:09:30,172 --> 00:09:30,880 ruudulle. 182 00:09:30,880 --> 00:09:34,150 183 00:09:34,150 --> 00:09:37,200 Voit saada valikoimia kokonaislukuja kanssa paksusuolen. 184 00:09:37,200 --> 00:09:41,840 Joten 2,5 antaa sinulle vektori kaikki numerot 2: sta 5. 185 00:09:41,840 --> 00:09:44,530 >> Taulukot yksi-indeksoitu, joka ruuvit paljon ihmisiä 186 00:09:44,530 --> 00:09:47,540 up jos he useammasta tyypillinen ohjelmointikieliä, 187 00:09:47,540 --> 00:09:50,450 kuten C, jossa suurin asiat ovat nolla-indeksoitu. 188 00:09:50,450 --> 00:09:54,420 Tämäkin on jossa R perintöä kuten kieli, kuten ei 189 00:09:54,420 --> 00:09:56,560 ammattilaiset tulee. 190 00:09:56,560 --> 00:09:59,680 Jos olet sosiologi tai taloustieteilijä tai jotain 191 00:09:59,680 --> 00:10:01,980 ja yrität käyttää R pohjimmiltaan lisänä 192 00:10:01,980 --> 00:10:03,832 sinun tärkeämpää ammatillisen työn, 193 00:10:03,832 --> 00:10:06,040 aiot löytää yksi-indeksointi hieman luonnollinen. 194 00:10:06,040 --> 00:10:09,890 Koska olet alkaa laskea 1 arjessa, ei 0. 195 00:10:09,890 --> 00:10:13,260 >> For-silmukoita, tämä on samanlainen kuin foreach rakentaa PHP, 196 00:10:13,260 --> 00:10:17,090 joka pääset oppia in-- melko pian. 197 00:10:17,090 --> 00:10:22,540 Joka on arvon vektori ja voit tehdä asioita arvoa. 198 00:10:22,540 --> 00:10:24,040 Yleisö: Se on keksiä luento. 199 00:10:24,040 --> 00:10:26,248 CONNOR HARRIS: Voi, se on keksiä luento, erinomainen. 200 00:10:26,248 --> 00:10:29,815 Yleisö: Toimeksianto, on se pitäisi kohta oikealta vasemmalle? 201 00:10:29,815 --> 00:10:31,440 CONNOR HARRIS: Oikealta vasemmalle, kyllä. 202 00:10:31,440 --> 00:10:34,720 Voit ajatella sitä arvoa oikea työnsi muuttuja 203 00:10:34,720 --> 00:10:36,240 vasemmalla. 204 00:10:36,240 --> 00:10:36,781 Yleisö: OK. 205 00:10:36,781 --> 00:10:39,770 206 00:10:39,770 --> 00:10:42,330 >> CONNOR HARRIS: Ja lopuksi toiminto syntaksi on vähän outo. 207 00:10:42,330 --> 00:10:48,460 Sinulla on funktion nimi foo, osoitetaan Tämän avainsanan toiminto, jota seuraa 208 00:10:48,460 --> 00:10:51,530 kaikki argumentit ja sitten elin toiminnon jälkeen. 209 00:10:51,530 --> 00:10:53,280 Jälleen nämä asiat voivat tuntua hieman oudolta. 210 00:10:53,280 --> 00:10:57,181 He tulee toinen luonto jälkeen työskentelet kieli hieman. 211 00:10:57,181 --> 00:10:58,930 Niin vektorit, tapa voit rakentaa vektori 212 00:10:58,930 --> 00:11:04,550 on sinun tyyppi C, joka on avainsana, sitten kaikki numerot haluat tai jouset 213 00:11:04,550 --> 00:11:06,490 tai mitä tahansa. 214 00:11:06,490 --> 00:11:07,995 Asianosaisten myös vektoreita. 215 00:11:07,995 --> 00:11:09,620 Mutta tuloksena joukko saa litistetty. 216 00:11:09,620 --> 00:11:14,385 Joten ei voi olla taulukot missä jotkut elementit ovat yhden numeroita 217 00:11:14,385 --> 00:11:17,010 ja jotkut elementit ovat taulukot itse. 218 00:11:17,010 --> 00:11:20,010 >> Joten jos yrität rakentaa array olivat ensimmäinen elementti on 4 219 00:11:20,010 --> 00:11:22,370 ja toinen elementti on joukko 3,5 sinun 220 00:11:22,370 --> 00:11:25,890 vain saada kolme elementtiä array, 4,3,5. 221 00:11:25,890 --> 00:11:27,760 He eivät voi olla näiden yhdistelmiä. 222 00:11:27,760 --> 00:11:32,290 Jos yrität lukea tai kirjoittaa ulkopuolella rajojen vektori 223 00:11:32,290 --> 00:11:36,640 saat tätä arvoa kutsutaan NA joka tarkoittaa puuttuva arvo. 224 00:11:36,640 --> 00:11:39,900 Ja tämä on tarkoitettu kuten tilastotieteilijöiden jotka 225 00:11:39,900 --> 00:11:43,080 käsittelet puutteellisia aineistoja. 226 00:11:43,080 --> 00:11:46,460 >> Jos haet toiminto, joka on tarkoitus Vain yhden numeron jono 227 00:11:46,460 --> 00:11:49,220 niin mitä saat on, toiminto kartta yli jono. 228 00:11:49,220 --> 00:11:52,130 Joten jos toiminto sanokaamme vie numero ja palaa sen neliö. 229 00:11:52,130 --> 00:11:58,170 Haet että array 2,3,5 Mitä saat on joukko 4,9,25. 230 00:11:58,170 --> 00:12:00,010 >> Ja se on erittäin hyödyllinen koska se tarkoittaa, 231 00:12:00,010 --> 00:12:03,374 ei tarvitse kirjoittaa silmukoita tehdä hyvin yksinkertaisia ​​asioita, kuten soveltamalla 232 00:12:03,374 --> 00:12:05,040 toiminto kaikille jäsenille tietokokonaisuutta. 233 00:12:05,040 --> 00:12:08,557 Jotka, jos olet työskennellyt suuri aineistoja, sinun täytyy tehdä paljon. 234 00:12:08,557 --> 00:12:10,390 Binary toiminnot ovat Applied tuloa merkintä. 235 00:12:10,390 --> 00:12:12,430 Haen tuohon. 236 00:12:12,430 --> 00:12:16,750 Voit käyttää niitä paneelit tai vektoreita hakasulkeilla. 237 00:12:16,750 --> 00:12:22,300 Joten vektori nimi hakasulkeisiin 1 antaa sinulle ensimmäinen elementti. 238 00:12:22,300 --> 00:12:25,510 Vector nimi hakasulkeiden 2 antaa sinulle toinen elementti. 239 00:12:25,510 --> 00:12:27,530 >> Voit siirtää vektorin indeksien ja voit 240 00:12:27,530 --> 00:12:29,640 saada takaisin ulos pohjimmiltaan osa tekijä. 241 00:12:29,640 --> 00:12:34,990 Joten voit tehdä vektori nimi suluissa C, 2,4 ja saat pois vektori sisälsi 242 00:12:34,990 --> 00:12:38,804 toisen ja neljännen taulukon alkiot. 243 00:12:38,804 --> 00:12:40,720 Ja jos haluat vain nopea yhteenveto tilastotieto 244 00:12:40,720 --> 00:12:47,529 vektorin kuten neljännespisteiden alue, mediaani, maksimi, mitä tahansa, 245 00:12:47,529 --> 00:12:49,820 Voit laittaa yhteenveto vektori nimi ja saada että ulos. 246 00:12:49,820 --> 00:12:52,680 Se ei oikeastaan ​​hyödyllinen ohjelmointi mutta jos pelaat 247 00:12:52,680 --> 00:12:55,990 ympäri aineistoja, se on kätevä. 248 00:12:55,990 --> 00:12:58,650 >> Matrices-- pohjimmiltaan korkeamman ulottuvuuden taulukoita. 249 00:12:58,650 --> 00:13:01,190 Heillä on tämä erityinen merkintätapa syntaksin. 250 00:13:01,190 --> 00:13:07,620 Matriisin array, joka saa täytetty in-- pahoillani, matriisin tietoja, 251 00:13:07,620 --> 00:13:09,780 rivien, sarakkeiden määrän. 252 00:13:09,780 --> 00:13:13,180 Kun sinulla on joitakin tietoja, se täyttää array pohjimmiltaan menossa ylhäältä alas 253 00:13:13,180 --> 00:13:13,380 ensimmäinen. 254 00:13:13,380 --> 00:13:14,190 Sitten vasemmalta oikealle. 255 00:13:14,190 --> 00:13:15,030 Niin, niin. 256 00:13:15,030 --> 00:13:17,809 257 00:13:17,809 --> 00:13:19,600 Ja R on rakennettu matriisi kertolaskua, 258 00:13:19,600 --> 00:13:24,310 spektrin hajoaminen, diagonalisointi, paljon asioita. 259 00:13:24,310 --> 00:13:27,785 Jos haluat korkeamman ulottuvuuden paneelit, niin 3, 4, 5, 260 00:13:27,785 --> 00:13:29,410 tai mitä mitat voit tehdä sen. 261 00:13:29,410 --> 00:13:34,400 Syntaksi on joukko hämärä vastaa c, sitten luettelon mitat. 262 00:13:34,400 --> 00:13:38,620 Joten jos haluat 4 ulotteinen array joiden mitat 4, 7, 8, 9, array, 263 00:13:38,620 --> 00:13:45,470 dim vastaa C (4,7,8,9). 264 00:13:45,470 --> 00:13:51,180 >> Voit käyttää yhden arvot suluissa ensimmäinen merkintä pilkku toinen merkintä. 265 00:13:51,180 --> 00:13:54,870 Voit saada koko viipaleita rivien tai sarakkeiden. 266 00:13:54,870 --> 00:13:59,900 Tämän epätäydellinen syntaksi on vain rivi numero pilkku tai pilkku sarake 267 00:13:59,900 --> 00:14:00,400 määrä. 268 00:14:00,400 --> 00:14:02,874 269 00:14:02,874 --> 00:14:04,540 Joten luettelot ovat eräänlainen liittyvän array. 270 00:14:04,540 --> 00:14:06,360 Heillä on oma syntaksin täällä. 271 00:14:06,360 --> 00:14:08,320 Jälleen ei kuumeisesti kopioi kaikki tämän alas. 272 00:14:08,320 --> 00:14:11,370 Tämä on vain niin, että ihmiset läpi diat myöhemmin 273 00:14:11,370 --> 00:14:13,089 on tämä kaikki kiva viite. 274 00:14:13,089 --> 00:14:16,130 Ja tämä tulee hyvin luonnollinen kerran Olen itse kävelee demoja. 275 00:14:16,130 --> 00:14:19,295 276 00:14:19,295 --> 00:14:20,920 Joten luetellaan periaatteessa liittyy taulukot. 277 00:14:20,920 --> 00:14:27,040 Voit käyttää arvoja lista nimeä, dollarin merkki, avain. 278 00:14:27,040 --> 00:14:31,370 Joten jos lista on foo, voit käyttää sitä niin. 279 00:14:31,370 --> 00:14:37,032 Voit saada koko avainarvoparin johtamalla aukiolla kiinnike indeksi. 280 00:14:37,032 --> 00:14:39,240 Jos olet lukea olematon näppäintä, saat null. 281 00:14:39,240 --> 00:14:41,150 Se ei virhe. 282 00:14:41,150 --> 00:14:43,590 Asia on, R tekevät niinkuin paljon null kuin se voi. 283 00:14:43,590 --> 00:14:46,580 Ja tämä voi tarkoittaa, että jos olet ei odota saada null ulos 284 00:14:46,580 --> 00:14:51,840 Joidenkin lista lukea, saat joitakin arvaamaton virheet alempana 285 00:14:51,840 --> 00:14:52,620 linja. 286 00:14:52,620 --> 00:14:54,890 >> Tämä tapahtui minulle kesätyö kun käytin R 287 00:14:54,890 --> 00:14:58,410 jossa vaihdoin miten tietty Luettelo on määritelty yhdessä paikalla 288 00:14:58,410 --> 00:15:05,410 mutta ei muuttanut myöhemmin koodi, joka luetaan arvoja siitä. 289 00:15:05,410 --> 00:15:10,190 Ja niin mitä tapahtui oli olin lukeminen tyhjäarvoja pois tästä luettelosta, 290 00:15:10,190 --> 00:15:13,090 kulkee ne toiminnot, ja on hyvin sekava 291 00:15:13,090 --> 00:15:16,000 kun sain kaikenlaisia satunnainen Äärettömyydet pulppuaa 292 00:15:16,000 --> 00:15:16,790 tässä toiminnossa. 293 00:15:16,790 --> 00:15:20,730 Koska jos käytät tiettyjä enintään tai vähintään toimintoja null, 294 00:15:20,730 --> 00:15:22,570 saat ääretön arvot pois. 295 00:15:22,570 --> 00:15:26,400 296 00:15:26,400 --> 00:15:29,180 >> Datakehykset, he alaluokka luettelon. 297 00:15:29,180 --> 00:15:31,170 Jokainen arvo on vektori samanpituisia. 298 00:15:31,170 --> 00:15:34,220 Ja niitä käytetään esittämiseen, pohjimmiltaan, datataulukot. 299 00:15:34,220 --> 00:15:36,175 On tämä alustus syntaksi. 300 00:15:36,175 --> 00:15:38,800 Tämä on kaikki, jälleen, on paljon selkeämpi kun saat demon. 301 00:15:38,800 --> 00:15:42,240 302 00:15:42,240 --> 00:15:44,240 Ja kiva juttu datakehykset on, että 303 00:15:44,240 --> 00:15:49,380 voi antaa nimiä kaikki sarakkeet ja nimet kaikki rivit. 304 00:15:49,380 --> 00:15:53,890 Ja niin että tekee päästä niitä hieman ystävällisempi. 305 00:15:53,890 --> 00:15:59,130 Myös tämä on, miten useimmat toimintoja, lukea tietoja Excel 306 00:15:59,130 --> 00:16:03,820 tai tekstitiedostoja, esimerkiksi, lukee tietonsa. 307 00:16:03,820 --> 00:16:07,555 He laittaa sitä jonkinlainen datakehyksen. 308 00:16:07,555 --> 00:16:09,680 Joten functions-- toiminnot syntaksi on vähän outo. 309 00:16:09,680 --> 00:16:16,160 Taas se on funktion nimi, luovuttaa, avainsana toiminto ja sitten 310 00:16:16,160 --> 00:16:17,900 argumenttiluettelossa. 311 00:16:17,900 --> 00:16:24,080 Joten joitakin mukavia asioita miten toiminnot toimivat täällä. 312 00:16:24,080 --> 00:16:28,170 Yhden, voit itse määrittää oletusarvot tiettyjä väitteitä. 313 00:16:28,170 --> 00:16:32,910 Joten voit sanoa R1 equals-- voit sanoa foo 314 00:16:32,910 --> 00:16:38,290 on toiminto, jossa R1 vastaa jotain oletuksena jos käyttäjä määrittää 315 00:16:38,290 --> 00:16:39,090 argumentteja. 316 00:16:39,090 --> 00:16:41,932 Muuten, se on mitä hän laittaa. 317 00:16:41,932 --> 00:16:44,140 Ja tämä on erittäin kätevä koska paljon meidän toimintoja 318 00:16:44,140 --> 00:16:47,910 on usein kymmeniä tai satoja argumentteja. 319 00:16:47,910 --> 00:16:51,210 Esimerkiksi ne, piirtämistä kaavioita tai piirtämällä sirontakuvaajiin 320 00:16:51,210 --> 00:16:54,430 on väitteitä, jotka ohjaavat kaiken otsikko ja akselin 321 00:16:54,430 --> 00:16:59,512 tarrat väri regressiolinjoja. 322 00:16:59,512 --> 00:17:01,470 Joten jos et halua saada ihmiset täsmentää 323 00:17:01,470 --> 00:17:04,050 jokainen näistä satoja perustelut 324 00:17:04,050 --> 00:17:07,674 valvoa jokaista osa juoni tai regressio tai mitä tahansa, 325 00:17:07,674 --> 00:17:09,299 se kiva olla nämä oletusarvot. 326 00:17:09,299 --> 00:17:12,700 327 00:17:12,700 --> 00:17:19,146 >> Ja sitten voit todella kirjoittaa niin näit takaisin tänne. 328 00:17:19,146 --> 00:17:22,869 Tai löytää parempaa esimerkkiä. 329 00:17:22,869 --> 00:17:28,690 Kun soitat toimintoja voit itse soittaa heille käyttämällä argumenttinimiä. 330 00:17:28,690 --> 00:17:33,919 Joten tässä on esimerkki matriisi rakentaja. 331 00:17:33,919 --> 00:17:34,960 Se kestää kolme väitettä. 332 00:17:34,960 --> 00:17:36,760 Yleensä sinulla on tietoja, joka on vektori. 333 00:17:36,760 --> 00:17:38,920 Sinulla on N rivi, joka on määrä rivejä. 334 00:17:38,920 --> 00:17:41,160 Sinulla N cols-- sarakkeita. 335 00:17:41,160 --> 00:17:43,920 Asia on, jos kirjoitat N rivi vastaa riippumatta 336 00:17:43,920 --> 00:17:46,520 ja N col vastaa riippumatta kun soitat tätä toimintoa, 337 00:17:46,520 --> 00:17:47,770 voit itse kääntää niitä. 338 00:17:47,770 --> 00:17:51,590 Niin voit laittaa N COL ensimmäinen ja N rivi toinen ja se tekee mitään eroa. 339 00:17:51,590 --> 00:17:54,660 Niin, että on mukava pikku ominaisuus. 340 00:17:54,660 --> 00:17:56,260 >> Oliko tuonti ja vienti. 341 00:17:56,260 --> 00:18:00,010 Tämä voidaan tehdä, periaatteessa. 342 00:18:00,010 --> 00:18:03,816 Tiloja on myös kirjoittaa ulos mielivaltainen R vastustaa binaaritiedoston 343 00:18:03,816 --> 00:18:05,190 ja sitten lukea ne takaisin myöhemmin. 344 00:18:05,190 --> 00:18:08,030 Joka on kätevä, jos teet iso interaktiivinen istunto R 345 00:18:08,030 --> 00:18:12,850 ja sinun pitää tallentaa asiat hyvin nopeasti. 346 00:18:12,850 --> 00:18:16,460 Oletuksena R on työhakemiston että tiedostot saavat kirjoitettu ulos 347 00:18:16,460 --> 00:18:19,410 ja luetaan takaisin sisään. 348 00:18:19,410 --> 00:18:22,350 Voit nähdä, että getwg, vaihda se setdw. 349 00:18:22,350 --> 00:18:25,630 Mitään erityisen mielenkiintoinen täällä 350 00:18:25,630 --> 00:18:28,270 >> Joten nyt todellinen tilastot stuff-- Multilineaarinen regressio. 351 00:18:28,270 --> 00:18:30,960 352 00:18:30,960 --> 00:18:34,910 Joten tavallista syntaksin on vähän monimutkainen. 353 00:18:34,910 --> 00:18:37,260 Malli on iso esine periaatteessa. 354 00:18:37,260 --> 00:18:39,910 Se saa määrätty lm, joka on funktiokutsu. 355 00:18:39,910 --> 00:18:43,840 Ensimmäinen elementti, y tilde x1 plus riippumatta. 356 00:18:43,840 --> 00:18:46,574 357 00:18:46,574 --> 00:18:47,990 Minun syntaksin tässä on vähän sekava. 358 00:18:47,990 --> 00:18:49,490 Olen melko pahoillani, tämä on tavallinen 359 00:18:49,490 --> 00:18:50,990 että tietokone oppikirjoissa tehdä tämän. 360 00:18:50,990 --> 00:18:54,890 Mutta se on vähän outo. 361 00:18:54,890 --> 00:18:58,200 >> Joten periaatteessa, se on lm suluissa, ensimmäinen erä 362 00:18:58,200 --> 00:19:06,730 on variable-- pahoillani, riippuvainen muuttuja tilde x1 plus x2 plus 363 00:19:06,730 --> 00:19:10,910 kuitenkin monien riippumattomien muuttujia sinulla on. 364 00:19:10,910 --> 00:19:14,240 Ja sitten nämä voivat olla joko vektorit, kaikki samanpituisia. 365 00:19:14,240 --> 00:19:16,220 Tai ne voivat olla pylväs otsikot datakehyksessä 366 00:19:16,220 --> 00:19:18,553 että juuri määrittämäsi Toinen väite datakehyksen. 367 00:19:18,553 --> 00:19:23,270 368 00:19:23,270 --> 00:19:26,380 >> Voit myös määrittää monimutkaisempi kaava 369 00:19:26,380 --> 00:19:31,990 joten sinun ei tarvitse lineaarisesti taantua yksi riippuva muuttuja, 370 00:19:31,990 --> 00:19:34,440 tai yhden vektorin on ennestään vektori. 371 00:19:34,440 --> 00:19:38,070 Voit tehdä, esimerkiksi, vektorikomponentti y potenssiin plus 1 372 00:19:38,070 --> 00:19:42,100 ja taantua että vastaan log joidenkin muiden vektorin. 373 00:19:42,100 --> 00:19:45,200 Voit tulostaa yhteenvetoja malli tämä komento nimeltään 374 00:19:45,200 --> 00:19:48,607 summary-- vain yhteenveto parens malli. 375 00:19:48,607 --> 00:19:50,190 Taas jotain muuta minun pitäisi selventää. 376 00:19:50,190 --> 00:19:55,407 377 00:19:55,407 --> 00:19:58,615 Jotain muuta, joka saa korjataan kun diat nousevat internetissä. 378 00:19:58,615 --> 00:20:01,127 379 00:20:01,127 --> 00:20:03,210 Jos haluat vain laskea yksinkertainen korrelaatio 380 00:20:03,210 --> 00:20:09,170 voit käyttää korrelaatiovektorin 1 vektori 2 toiminto ydin. 381 00:20:09,170 --> 00:20:11,856 Menetelmä on oletuksena Pearson korrelaatioita. 382 00:20:11,856 --> 00:20:13,480 Ne ovat standardin niistä voi tehdä. 383 00:20:13,480 --> 00:20:15,990 Siellä myös Spearman ja Kendell korrelaatiot 384 00:20:15,990 --> 00:20:19,530 jotka ovat joitakin erilaisia paremmuusjärjestykseen korrelaatio. 385 00:20:19,530 --> 00:20:23,600 No ne eivät laske tuotetta hetkiä välillä vektorien itse, 386 00:20:23,600 --> 00:20:28,511 mutta vektorin sijoitus tilauksia. 387 00:20:28,511 --> 00:20:29,510 Selitän myöhemmin. 388 00:20:29,510 --> 00:20:30,120 >> Yleisö: Nopea kysymys 389 00:20:30,120 --> 00:20:30,360 >> CONNER HARRIS: Toki. 390 00:20:30,360 --> 00:20:33,151 >> Yleisö: Eli kun olet laskettaessa siitä yksinkertaisesta korrelaatiot do 391 00:20:33,151 --> 00:20:37,655 oletat, että on olemassa tilastollinen merkitys korrelaatio? 392 00:20:37,655 --> 00:20:39,030 CONNER HARRIS: Sinun ei tarvitse. 393 00:20:39,030 --> 00:20:41,840 394 00:20:41,840 --> 00:20:43,960 Lm on pohjimmiltaan vain kone. 395 00:20:43,960 --> 00:20:47,690 Se vie kaksi asiaa ja se sylkemään 396 00:20:47,690 --> 00:20:49,770 kertoimet parhaiten sopiva viiva. 397 00:20:49,770 --> 00:20:52,310 Se myös raportoi standardi virheet nämä kertoimet. 398 00:20:52,310 --> 00:20:55,865 Ja se kertoo, kuten on siepata tilastollisesti merkitsevä 399 00:20:55,865 --> 00:20:56,740 tai ero 0. 400 00:20:56,740 --> 00:20:59,400 Onko kaltevuus paras sopiva viiva tilastollisesti 401 00:20:59,400 --> 00:21:01,510 eri nollasta, jne. 402 00:21:01,510 --> 00:21:06,260 Joten se olettaa mitään, mielestäni on paras vastaus kysymykseesi. 403 00:21:06,260 --> 00:21:07,410 OK. 404 00:21:07,410 --> 00:21:14,650 >> Plotting-- joten tärkein syy sinun pitäisi Käytä R, kuten Multilineaarinen regressio. 405 00:21:14,650 --> 00:21:17,320 Periaatteessa jokainen kieli on joitakin järjestely että. 406 00:21:17,320 --> 00:21:21,365 Ja rehellisesti R: n syntaksia regressio on vähän mystistä. 407 00:21:21,365 --> 00:21:22,990 Mutta kuvaaja on, jos se todella loistaa. 408 00:21:22,990 --> 00:21:28,090 >> Työjuhta toiminto on juoni ja se kestää kaksi vektoria, x ja y. 409 00:21:28,090 --> 00:21:33,010 Ja sitten ellipsin edustaa hyvin suuri joukko valinnaisia ​​väitteet, 410 00:21:33,010 --> 00:21:39,190 valvoa kaikkea otsikot värit eri linjojen tai eri kohtiin, 411 00:21:39,190 --> 00:21:40,200 tyypin juoni. 412 00:21:40,200 --> 00:21:42,250 Voit olla hajottaa tontteja tai viivadiagrammeissa. 413 00:21:42,250 --> 00:21:47,900 414 00:21:47,900 --> 00:21:49,710 >> [Äänetön] 2 vektorit samanpituisia. 415 00:21:49,710 --> 00:21:53,780 Voit ennen tätä liittää datakehyksen käsikirjoitus. 416 00:21:53,780 --> 00:22:01,220 Ja tämä avulla voit vain käyttää sarake otsikot sijaan eri vektoriin. 417 00:22:01,220 --> 00:22:05,410 Voit lisätä parhainta sovitusta edustavat suorat ja paikalliset regressio käyrät teidän kuvaaja. 418 00:22:05,410 --> 00:22:09,390 >> Nämä komennot on lueteltu täällä, AB-linjan ja linjat, 419 00:22:09,390 --> 00:22:11,640 oletuksena nämä saada kirjoitetaan ponnahdusikkunoista 420 00:22:11,640 --> 00:22:15,560 koska se olettaa, että käytät R vuorovaikutteisesti. 421 00:22:15,560 --> 00:22:17,310 Jos et ole voit kirjoittaa kaksi tiedostot 422 00:22:17,310 --> 00:22:21,600 ovat todella tahansa muodossa haluat. 423 00:22:21,600 --> 00:22:25,410 Anteeksi, minulla on kirjoitusvirhe Tajusin juuri. 424 00:22:25,410 --> 00:22:30,887 425 00:22:30,887 --> 00:22:32,720 Jos haluat avata toinen graafinen laite 426 00:22:32,720 --> 00:22:39,200 voit käyttää tätä toimintoa kutsutaan PNG tai JPEG tai paljon muita kuvaformaatteja. 427 00:22:39,200 --> 00:22:42,319 Ja voit kirjoittaa kaavioiden mitä tiedostonimi määrittää. 428 00:22:42,319 --> 00:22:45,110 Peruuttaa, että sinun täytyy use-- En kirjoittanut tätä slide-- 429 00:22:45,110 --> 00:22:49,650 mutta siellä on toiminto nimeltään dev piste pois, että ei ota argumentteja. 430 00:22:49,650 --> 00:22:51,517 >> Sitten on tilat 3D salavehkeily 431 00:22:51,517 --> 00:22:53,350 ja ääriviivat piirtämistä jos haluat tehdä 432 00:22:53,350 --> 00:22:55,700 kaavioita kaksi riippumatonta muuttujaa. 433 00:22:55,700 --> 00:22:57,150 En päästä näihin juuri nyt. 434 00:22:57,150 --> 00:22:59,130 >> On myös joitakin tilat animaatio 435 00:22:59,130 --> 00:23:01,300 ne ovat yleensä kolmansien osapuolten ylläpitämiä. 436 00:23:01,300 --> 00:23:06,330 Olen tehnyt animaatioita R kuvaajat, mutta en ole käyttänyt näitä kolmannen osapuolen 437 00:23:06,330 --> 00:23:06,940 kirjastot. 438 00:23:06,940 --> 00:23:09,929 Joten en voi oikeastaan ​​todistaa miten hyviä he ovat. 439 00:23:09,929 --> 00:23:12,220 Mitä Suosittelen, jos haluat tehdä animaatioita käyttäen R 440 00:23:12,220 --> 00:23:16,480 on voit kirjoittaa pois kaikki kehykset animaatiot 441 00:23:16,480 --> 00:23:18,470 ja voit käyttää kolmannen osapuolen program-- 442 00:23:18,470 --> 00:23:23,630 tyypillisistä kutsutaan FFmpeg tai ImageMagick-- pistellä 443 00:23:23,630 --> 00:23:26,540 kaikki kehyksiä yhdeksi animaatio. 444 00:23:26,540 --> 00:23:28,380 >> Joten aika demo. 445 00:23:28,380 --> 00:23:31,030 446 00:23:31,030 --> 00:23:37,189 Joten jos käytät mitä tahansa Unix kuten järjestelmä joka on Linux BSD mutta joka käyttää BSD. 447 00:23:37,189 --> 00:23:39,730 OS X avaa terminaali-ikkuna ja Type R komentokehotteeseen. 448 00:23:39,730 --> 00:23:42,820 Jos sinulla on R studiossa tai kuten, että myös toimii. 449 00:23:42,820 --> 00:23:46,270 Windows-käyttäjille pitäisi olla löytää R Käynnistä-valikon. 450 00:23:46,270 --> 00:23:50,390 Sitä pitäisi kutsua jotain kuten R x64 3 pisteen riippumatta. 451 00:23:50,390 --> 00:23:53,110 Avaa että sinne. 452 00:23:53,110 --> 00:23:58,850 >> Joten nyt haluan vain Avaa pääteikkuna. 453 00:23:58,850 --> 00:24:02,562 Hyvä, haku. 454 00:24:02,562 --> 00:24:03,520 Yleisö: Komento-Space 455 00:24:03,520 --> 00:24:06,675 CONNER HARRIS: Komento-Space, kiitos. 456 00:24:06,675 --> 00:24:10,030 En yleensä käytä Maceissa. 457 00:24:10,030 --> 00:24:13,310 Terminaali, näyttää uusi ikkuna. 458 00:24:13,310 --> 00:24:18,120 New window on asetuksia Basic, R. Joten sinun pitäisi saada 459 00:24:18,120 --> 00:24:22,230 tervetullut viesti, jotain tällaista. 460 00:24:22,230 --> 00:24:31,060 >> Joten olen käyttäen R vuorovaikutteisesti. 461 00:24:31,060 --> 00:24:32,719 Voit myös kirjoittaa R skriptejä tietenkin. 462 00:24:32,719 --> 00:24:34,510 Periaatteessa skriptejä ajaa täsmälleen samalla tavalla kuin 463 00:24:34,510 --> 00:24:40,250 istuisit tietokoneen kirjoittamalla jokainen rivi yksi kerrallaan. 464 00:24:40,250 --> 00:24:42,660 Joten aloitetaan tekemällä vektorin. 465 00:24:42,660 --> 00:24:46,230 Nuoli C 1, 2. 466 00:24:46,230 --> 00:24:49,400 1, 2, 4. 467 00:24:49,400 --> 00:24:50,050 OK toki. 468 00:24:50,050 --> 00:24:51,630 Voin tehdä fontin kokoa suurempi. 469 00:24:51,630 --> 00:24:53,030 >> Yleisö: Komento-Plus 470 00:24:53,030 --> 00:24:53,650 >> CONNER HARRIS: Komento-Plus. 471 00:24:53,650 --> 00:24:54,191 Komento-Plus. 472 00:24:54,191 --> 00:24:57,610 473 00:24:57,610 --> 00:25:00,370 Okei, miten tuo on? 474 00:25:00,370 --> 00:25:00,870 Hyvä? 475 00:25:00,870 --> 00:25:01,551 OK. 476 00:25:01,551 --> 00:25:03,300 Joten aloittaa julistamisesta Vector lista. 477 00:25:03,300 --> 00:25:08,710 Do, nuoli, C 1,2,4. 478 00:25:08,710 --> 00:25:11,181 Voimme nähdä. 479 00:25:11,181 --> 00:25:12,680 Älä ole huolissasi kiinnike siellä. 480 00:25:12,680 --> 00:25:18,590 Suluissa joten jos tulostaa hyvin pitkä taulukot, voimme missä olet. 481 00:25:18,590 --> 00:25:26,987 Yksi esimerkki olisi, jos en vain haluavat alue 2-200. 482 00:25:26,987 --> 00:25:28,820 Jos minä tulostettu hyvin pitkä jono, suluissa 483 00:25:28,820 --> 00:25:31,060 on vain niin voin pitää kirjaa joka indeksin 484 00:25:31,060 --> 00:25:33,250 me olemme, jos etsin tällä visuaalisesti. 485 00:25:33,250 --> 00:25:36,570 486 00:25:36,570 --> 00:25:38,280 Joten joka tapauksessa, meillä on. 487 00:25:38,280 --> 00:25:43,326 >> Joten sanoin aiemmin, että taulukot vuorovaikutuksessa oikein hyvin, esimerkiksi, 488 00:25:43,326 --> 00:25:44,450 unary toimintoja, kuten tämä. 489 00:25:44,450 --> 00:25:46,500 Joten mitä taidan saada, jos kirjoitan plus 1? 490 00:25:46,500 --> 00:25:49,630 491 00:25:49,630 --> 00:25:51,140 Jep. 492 00:25:51,140 --> 00:25:54,250 Oikea, nyt teen tämä eri array. 493 00:25:54,250 --> 00:26:01,650 Sanotaan b c 20,40, 80. 494 00:26:01,650 --> 00:26:03,400 Niin mitä mieltä olet Tämä komento tekee? 495 00:26:03,400 --> 00:26:09,962 496 00:26:09,962 --> 00:26:10,670 Lisää elementtejä. 497 00:26:10,670 --> 00:26:14,950 Ja niin periaatteessa se mitä se tekee. 498 00:26:14,950 --> 00:26:16,740 Joten tämä on melko kätevä. 499 00:26:16,740 --> 00:26:23,800 Joten en miten voin tehdä tämän. C on, sanokaamme, 6 kertaa 1-10. 500 00:26:23,800 --> 00:26:26,789 501 00:26:26,789 --> 00:26:28,830 Joten mitä haluan nähdä sisälsi, mitä luulet? 502 00:26:28,830 --> 00:26:37,110 503 00:26:37,110 --> 00:26:38,110 Joten kaikki kerrannaisina kuusi. 504 00:26:38,110 --> 00:26:42,170 Nyt, mitä luulet tapahtuu, jos teen näin? 505 00:26:42,170 --> 00:26:48,090 Teen tätä hieman selkeämpi, C, C. 506 00:26:48,090 --> 00:26:50,365 Mitä tapahtuu, sinä ajatella, jos teen näin? 507 00:26:50,365 --> 00:26:51,488 plus C. 508 00:26:51,488 --> 00:26:55,550 509 00:26:55,550 --> 00:26:56,050 [KUULUMATON] 510 00:26:56,050 --> 00:26:58,552 511 00:26:58,552 --> 00:27:02,350 >> Yleisö: Joko virhe tai se vain lisää kolme ensimmäistä elementtejä. 512 00:27:02,350 --> 00:27:04,510 >> CONNER HARRIS: Ei aivan. 513 00:27:04,510 --> 00:27:05,522 Tämä on mitä saimme. 514 00:27:05,522 --> 00:27:08,910 Mitä tapahtuu, on lyhyempi array,, sai kierrätetään. 515 00:27:08,910 --> 00:27:13,990 Joten saimme 124, 124, 124. 516 00:27:13,990 --> 00:27:15,710 Joo. 517 00:27:15,710 --> 00:27:18,940 Ja pohjimmiltaan, voit katsella tämä toiminta ennen plus 1, 518 00:27:18,940 --> 00:27:22,190 kuin alaluokan tämän ongelman, jos lyhin jono on vain numero 519 00:27:22,190 --> 00:27:25,410 1, joka on yksi alkiotaulukon. 520 00:27:25,410 --> 00:27:27,740 Minä vain olla sanomalla vektori kaikki aika sijaan array, 521 00:27:27,740 --> 00:27:30,290 koska sitähän R asiakirjat tavallisesti. 522 00:27:30,290 --> 00:27:33,070 Se on syvälle c tapa. 523 00:27:33,070 --> 00:27:37,590 >> OK, joten nyt meillä on tämä joukko. 524 00:27:37,590 --> 00:27:38,830 Joten meillä on tämä joukko, c. 525 00:27:38,830 --> 00:27:41,380 Voimme saada yhteenveto tilastojen C, yhteenveto C. 526 00:27:41,380 --> 00:27:46,920 527 00:27:46,920 --> 00:27:48,280 Ja se on mukavaa. 528 00:27:48,280 --> 00:27:51,070 529 00:27:51,070 --> 00:27:52,670 Joten Nyt tehdä joitakin matriisi asioita. 530 00:27:52,670 --> 00:27:56,160 Sanotaan m on matriisi. 531 00:27:56,160 --> 00:27:57,780 Tehdään tästä kolme kolmella yksi. 532 00:27:57,780 --> 00:28:01,630 Joten nrows vastaa 3, ja ncols vastaa 3. 533 00:28:01,630 --> 00:28:04,190 534 00:28:04,190 --> 00:28:10,710 Ja tietojen katsotaanpa do-- niin mitä luulet tämä tulee tehdä? 535 00:28:10,710 --> 00:28:15,310 536 00:28:15,310 --> 00:28:16,580 >> Oikea, se on seuraava. 537 00:28:16,580 --> 00:28:17,970 Se on nrow ja ncolumn. 538 00:28:17,970 --> 00:28:22,164 539 00:28:22,164 --> 00:28:24,580 Joten mitä olen tehnyt on olen julisti kolme kolmen matriisi 540 00:28:24,580 --> 00:28:26,950 ja olen hyväksyttiin yhdeksän alkiotaulukon. 541 00:28:26,950 --> 00:28:30,530 Niin logaritmi kaikkien elementit yksi yhdeksään. 542 00:28:30,530 --> 00:28:33,400 543 00:28:33,400 --> 00:28:37,285 Ja kaikki ne arvot täyttää ylös array-- anteeksi? 544 00:28:37,285 --> 00:28:38,660 Yleisö: Nuo ovat alustan 10 lokit? 545 00:28:38,660 --> 00:28:41,284 CONNER HARRIS: Ei, loki on luonnolliset logaritmit, joten pohja e. 546 00:28:41,284 --> 00:28:44,886 547 00:28:44,886 --> 00:28:47,010 Joo, jos halusi pohja 10 log, mielestäni sinun täytyisi 548 00:28:47,010 --> 00:28:51,620 kirjautua tahansa, jaettuna log 10. 549 00:28:51,620 --> 00:28:56,750 Ja niin tiedot [äänetön] vain täyttyy jono, niin ylhäältä alas, 550 00:28:56,750 --> 00:28:59,490 sitten vasemmalta oikealle. 551 00:28:59,490 --> 00:29:06,890 Ja jos halusi tehdä joitakin muita array, sanokaamme n on matriisi. 552 00:29:06,890 --> 00:29:10,317 Tehdään, en tiedä, 2-13. 553 00:29:10,317 --> 00:29:11,900 Tai minä tehdä jotain mielenkiintoista. 554 00:29:11,900 --> 00:29:13,770 Teen 2-4. 555 00:29:13,770 --> 00:29:15,780 nrow tasavertaisina, sanokaamme, 3. 556 00:29:15,780 --> 00:29:18,992 Ncol vastaa 4. 557 00:29:18,992 --> 00:29:20,360 n. 558 00:29:20,360 --> 00:29:22,090 Joten meillä tätä. 559 00:29:22,090 --> 00:29:26,130 >> Ja nyt, jos haluamme kertoa näitä, tekisimme n prosentin kertaa prosenttia, 560 00:29:26,130 --> 00:29:27,680 koska se on n. 561 00:29:27,680 --> 00:29:30,234 562 00:29:30,234 --> 00:29:31,400 Ja meillä on matriisi tuotteita. 563 00:29:31,400 --> 00:29:33,970 564 00:29:33,970 --> 00:29:37,810 Vuoteen he tavalla Näitkö kuinka kun minä julisti n, 2-4 565 00:29:37,810 --> 00:29:43,570 vektori sai pyöräili asti se täytti kaikki n? 566 00:29:43,570 --> 00:29:45,710 Jos halusi ottaa ominaisarvon hajoaminen, 567 00:29:45,710 --> 00:29:46,960 tämä on jotain voimme tehdä hyvin helposti. 568 00:29:46,960 --> 00:29:47,709 Voimme tehdä eigen n. 569 00:29:47,709 --> 00:29:52,290 570 00:29:52,290 --> 00:29:54,600 Ja niin tämä on meidän ensimmäinen kohtaavat luettelo. 571 00:29:54,600 --> 00:29:57,000 >> Joten eigen n on lista kahdella avaimella. 572 00:29:57,000 --> 00:29:58,430 Arvoon, joka on tämän taulukon täällä. 573 00:29:58,430 --> 00:30:01,030 Ja vektoreita, mikä on tämän taulukon täällä. 574 00:30:01,030 --> 00:30:08,240 Joten jos halusi purkaa, sanoa, tämä kolmas sarake 575 00:30:08,240 --> 00:30:13,080 alkaen ominaisvektorit matriisin, koska ominaisvektorit ovat sarakevektoreita. 576 00:30:13,080 --> 00:30:24,400 Joten voimme tehdä vec eigen n dollarin merkki vektorit, pilkku 3, on [äänetön]. 577 00:30:24,400 --> 00:30:29,800 578 00:30:29,800 --> 00:30:30,900 Vec. 579 00:30:30,900 --> 00:30:34,100 Onko se, kuten arvata saattaa. 580 00:30:34,100 --> 00:30:39,210 >> Sano sitten n kertaa prosenttia kertaa vec. 581 00:30:39,210 --> 00:30:42,610 582 00:30:42,610 --> 00:30:48,320 Joten tulos tässä varmasti näyttää jos otimme kolmannen eigenvalue täällä, 583 00:30:48,320 --> 00:30:50,390 joka vastaa kolmas ominaisvektori. 584 00:30:50,390 --> 00:30:53,190 Se vain kerrotaan kaiken Tämän ominaisvektori, komponentti-viisas, 585 00:30:53,190 --> 00:30:53,990 jonka ominaisarvo. 586 00:30:53,990 --> 00:30:57,760 Ja sitähän me odottaa, sillä siitähän ominaisarvot ovat. 587 00:30:57,760 --> 00:31:00,890 Onko kukaan täällä ei ottanut lineaarialgebraa? 588 00:31:00,890 --> 00:31:02,530 Pari ihmistä, OK. 589 00:31:02,530 --> 00:31:04,030 Vain kääntää aivot pois hieman. 590 00:31:04,030 --> 00:31:07,490 591 00:31:07,490 --> 00:31:20,720 Ja todellakin, jos otamme eigen n dollarin merkki arvot 3 kertaa vec, 592 00:31:20,720 --> 00:31:21,810 myös saada sama asia. 593 00:31:21,810 --> 00:31:24,726 Se muotoiltu eri tavalla rivi vektori sijasta pystyvektori, 594 00:31:24,726 --> 00:31:25,640 mutta iso juttu. 595 00:31:25,640 --> 00:31:29,430 596 00:31:29,430 --> 00:31:35,170 Ja niin ne ovat pohjimmiltaan mukava asioita, joita voimme tehdä matriisit, 597 00:31:35,170 --> 00:31:36,489 osoitettu luettelot. 598 00:31:36,489 --> 00:31:39,030 Haluan osoittaa mukava asioita toimii hyvin. 599 00:31:39,030 --> 00:31:41,750 >> Joten say-- [äänetön] toiminto, kutsukaamme 600 00:31:41,750 --> 00:31:51,960 se toi vastaan ​​toiminto n n squared-- Oikeastaan ​​se ei oikeastaan ​​paras. 601 00:31:51,960 --> 00:31:55,632 a, b, potenssiin ja b. 602 00:31:55,632 --> 00:31:58,547 603 00:31:58,547 --> 00:32:00,380 Joten yksi asia toiminnot, jälleen, on ne 604 00:32:00,380 --> 00:32:01,963 ei tarvitse nimenomaista palata lausuntoja. 605 00:32:01,963 --> 00:32:04,250 Joten voit just-- viime lausunto arvioitu 606 00:32:04,250 --> 00:32:07,502 on lausunto palasi, tai arvo palautetaan. 607 00:32:07,502 --> 00:32:10,460 Joten tässä tapauksessa, me vain arvioida yhden lausunnon, potenssiin ja b. 608 00:32:10,460 --> 00:32:12,043 Että on oletusarvo palauttaa arvon. 609 00:32:12,043 --> 00:32:14,530 Se ei koskaan sattuu laittaa palauttavat arvoja nimenomaisesti, 610 00:32:14,530 --> 00:32:16,880 varsinkin jos olet tekemisissä toiminta erittäin monimutkainen logiikka 611 00:32:16,880 --> 00:32:17,380 virtaus. 612 00:32:17,380 --> 00:32:18,450 Mutta et tarvitse niitä. 613 00:32:18,450 --> 00:32:24,890 Joten nyt voimme tehdä toi 5, 1, ja tämä on periaatteessa mitä voit odottaa. 614 00:32:24,890 --> 00:32:29,146 615 00:32:29,146 --> 00:32:31,270 Jotain muuta voimme tehdä, voimme todella tehdä func b 616 00:32:31,270 --> 00:32:33,260 on 1, vastaa 5. 617 00:32:33,260 --> 00:32:36,870 618 00:32:36,870 --> 00:32:40,770 Jos siis mitkä numero täällä, joka argumentti menee joka väitteen 619 00:32:40,770 --> 00:32:44,680 in-toiminto, voimme kääntää ympäri Näiden arvojen minne haluamme. 620 00:32:44,680 --> 00:32:48,405 >> Yleisö: Onko syy kirjoittaa se pois b 621 00:32:48,405 --> 00:32:52,404 vastaa toisin kuin vain käyttämällä numerot ja pilkku? 622 00:32:52,404 --> 00:32:54,820 CONNER HARRIS: Joo, yleensä tehdä tämän, jos sinulla on toimintoja 623 00:32:54,820 --> 00:32:58,540 paljon argumentteja. 624 00:32:58,540 --> 00:33:00,690 Jotka saattavat usein olla kuin LIPUT että haluat vain 625 00:33:00,690 --> 00:33:03,130 haluat käyttää harvoin. 626 00:33:03,130 --> 00:33:06,740 Ja näin voit only-- sinua voi viitata erityiset väitteet 627 00:33:06,740 --> 00:33:09,110 että haluat käyttää ei-oletusarvot, 628 00:33:09,110 --> 00:33:14,470 ja sinun ei tarvitse kirjoittaa ulos nippu lippuja vastaa väärien heidän jälkeensä. 629 00:33:14,470 --> 00:33:19,710 Tai voin kirjoittaa tämän jälleen oletusarvo kuten b = 2. 630 00:33:19,710 --> 00:33:26,289 Ja sitten voisin tehdä f func, Teen 4, 1 tällä kertaa. 631 00:33:26,289 --> 00:33:28,580 Ja 17, mikä on 4 potenssiin plus 1, kuten arvata saattaa. 632 00:33:28,580 --> 00:33:34,290 >> Mutta voisin myös vain kutsuvat tätä toi 4, 633 00:33:34,290 --> 00:33:36,970 ja saan 18, koska En määritä b. 634 00:33:36,970 --> 00:33:38,550 Joten b saa oletusarvo 2. 635 00:33:38,550 --> 00:33:41,700 636 00:33:41,700 --> 00:33:47,200 >> OK, joten nyt jos olet seuraavat yhdessä demo, 637 00:33:47,200 --> 00:33:51,010 Kirjoita tämä rivi komento kysyy ja katso, mitä tulee esiin. 638 00:33:51,010 --> 00:33:52,090 Oikeastaan, älä tee sitä. 639 00:33:52,090 --> 00:33:52,590 Kirjoita tähän. 640 00:33:52,590 --> 00:33:57,780 641 00:33:57,780 --> 00:34:01,000 Sinun pitäisi saada jotain tällaista. 642 00:34:01,000 --> 00:34:04,780 Joten mtcars on rakennettu tiedot asettaa tämä esittelyä 643 00:34:04,780 --> 00:34:13,550 tarkoituksiin, joka tulee with--, joka tulee vuonna oletuksena teidän r jakeluun. 644 00:34:13,550 --> 00:34:19,211 Tämä on kokoelma tilastot 1974 kysymys Motor Trend -lehden 645 00:34:19,211 --> 00:34:20,710 useita eri automalleihin. 646 00:34:20,710 --> 00:34:28,270 >> Joten siellä on maileina gallonaa kohden, cylinders-- Unohdan mitä disp is-- hevosvoimaa. 647 00:34:28,270 --> 00:34:31,610 648 00:34:31,610 --> 00:34:32,420 Todennäköisesti. 649 00:34:32,420 --> 00:34:36,920 Jos vain Google MT autoja, sitten yksi ensimmäisistä tuloksista 650 00:34:36,920 --> 00:34:38,730 on peräisin virallinen R asiakirjat 651 00:34:38,730 --> 00:34:41,080 ja se selittää kaikki nämä tiedot kenttiin. 652 00:34:41,080 --> 00:34:47,020 Joten paino is-- paino on paino auton tonnia. 653 00:34:47,020 --> 00:34:48,880 Q s on neljäsosa mailin aikaa. 654 00:34:48,880 --> 00:34:52,409 655 00:34:52,409 --> 00:34:55,850 Joten nyt voimme tehdä joitakin hauskoja asioita noin MT autojen kentissä. 656 00:34:55,850 --> 00:35:01,640 >> Joten voimme tehdä asioita kuten rivi nimiä, mt autoja. 657 00:35:01,640 --> 00:35:05,490 Ja tämä on luettelo kaikista rivien tietokokonaisuus, jotka ovat nimiä autoja. 658 00:35:05,490 --> 00:35:10,780 Voimme tehdä colnames, mt autoja tätä. 659 00:35:10,780 --> 00:35:15,500 Jos et mt autoja, sub-numeerinen indeksi, kuten 2. 660 00:35:15,500 --> 00:35:18,177 saamme toisessa sarakkeessa ulos tämä, mikä olisi sylintereitä. 661 00:35:18,177 --> 00:35:19,370 >> Yleisö: Mitä teit? 662 00:35:19,370 --> 00:35:21,570 >> CONNER HARRIS: olen kirjoittanut mt autot, suluissa e, 663 00:35:21,570 --> 00:35:24,180 joka antoi minulle toinen sarake pois mt autoja. 664 00:35:24,180 --> 00:35:34,501 665 00:35:34,501 --> 00:35:38,110 Tai jos haluamme peräkkäin, voin kirjoittaa mtcars pilkku 2, esimerkiksi. 666 00:35:38,110 --> 00:35:41,850 667 00:35:41,850 --> 00:35:46,390 Muut kierroksella 2. pilkku, niin. 668 00:35:46,390 --> 00:35:48,880 Ja että menee teidän peräkkäin. 669 00:35:48,880 --> 00:35:54,680 Tämä täällä vain antaa sinulle sarake, vaan sarake vektorina. 670 00:35:54,680 --> 00:36:04,634 671 00:36:04,634 --> 00:36:06,425 Tajusin juuri nyt unohdin osoittaa 672 00:36:06,425 --> 00:36:09,150 hienoja asioita vektorit että voit tehdä indeksejä. 673 00:36:09,150 --> 00:36:10,480 Joten anna minun tehdä juuri nyt. 674 00:36:10,480 --> 00:36:17,130 Tehdäänpä c gets-- laskemisesta tämä pause-- 2 kertaa 1-10. 675 00:36:17,130 --> 00:36:21,360 Joten C on vain olemaan vektori 2: sta 20. 676 00:36:21,360 --> 00:36:24,640 Voin ottaa elementtejä, kuten tämä, C2. 677 00:36:24,640 --> 00:36:30,942 Voin kulkea vektori näin, C-- haluan 678 00:36:30,942 --> 00:36:34,470 käyttää eri nimi kuin C, kuten vec C. 679 00:36:34,470 --> 00:36:37,591 680 00:36:37,591 --> 00:36:39,340 Periaatteessa olen tekemässä tämä niin et saa 681 00:36:39,340 --> 00:36:45,010 sekava välillä C vektori rakentaminen toiminto, 682 00:36:45,010 --> 00:36:48,800 ja sitten C muuttujan nimi. 683 00:36:48,800 --> 00:36:53,120 Vec suluissa C 4, 5, 7. 684 00:36:53,120 --> 00:36:56,540 Tämä saat minut ulos neljännen, viidennen, ja seitsemän elementtejä jono. 685 00:36:56,540 --> 00:37:01,740 Voin tehdä vec, laittaa negatiivinen indeksi, kuten negatiivinen 4. 686 00:37:01,740 --> 00:37:06,500 Jotka saavat minut pois tämän kanssa Neljäs elementti poistetaan. 687 00:37:06,500 --> 00:37:10,140 Sitten jos halusin tehdä viipaleita, Voin tehdä vec 2 kautta 6. 688 00:37:10,140 --> 00:37:15,480 2 paksusuolen 6 on vain yksi vektori, joka on 2, 3, 4, 5, 6. 689 00:37:15,480 --> 00:37:18,230 Sylkee että. 690 00:37:18,230 --> 00:37:20,770 >> Joten joka tapauksessa, takaisin mt autoja. 691 00:37:20,770 --> 00:37:26,650 692 00:37:26,650 --> 00:37:28,450 Joten tehdä joitakin taantumat. 693 00:37:28,450 --> 00:37:34,240 Sanotaan malli gets-- katsotaanpa lineaarisesti regress-- En tiedä. 694 00:37:34,240 --> 00:37:41,780 Katsotaanpa ensin eivät kiinnitä mtcars, tietenkin. 695 00:37:41,780 --> 00:37:44,870 696 00:37:44,870 --> 00:38:00,010 Joten [äänetön] malli lm, katsotaanpa taantua mailia per gallona tilde paino. 697 00:38:00,010 --> 00:38:03,300 Ja sitten datakehys on mtcars. 698 00:38:03,300 --> 00:38:06,830 Joten yhteenveto malli. 699 00:38:06,830 --> 00:38:12,900 700 00:38:12,900 --> 00:38:15,595 >> OK, joten tämä näyttää vähän monimutkainen. 701 00:38:15,595 --> 00:38:19,380 Mutta pohjimmiltaan, kun huomataan jos me yrittää ilmaista mailia per gallona 702 00:38:19,380 --> 00:38:23,970 lineaarisena funktiona paino, sitten saimme tämän linjan täällä, 703 00:38:23,970 --> 00:38:28,730 joka kuunteluja klo 37.28. 704 00:38:28,730 --> 00:38:33,830 37,28 olisi teoreettinen mailia per gallona auton, joka painaa nolla. 705 00:38:33,830 --> 00:38:41,210 Ja sitten jokainen ylimääräinen tonni, pudotat noin viisi mailia per gallona 706 00:38:41,210 --> 00:38:42,440 pois tuosta. 707 00:38:42,440 --> 00:38:45,120 Molemmat kertoimet sinua voi nähdä, keskivirheet siellä. 708 00:38:45,120 --> 00:38:47,870 Ja ne ovat hyvin tilastollisesti merkitsevä. 709 00:38:47,870 --> 00:38:55,740 >> Jotta voimme olla hyvin varmasti 1 e 10 negatiiviseen 10. 710 00:38:55,740 --> 00:38:59,510 Joten 1 kertaa jotain negatiivista 10, että jos teet raskaampi auto, 711 00:38:59,510 --> 00:39:01,440 se on pahempi mailia per gallona. 712 00:39:01,440 --> 00:39:04,940 713 00:39:04,940 --> 00:39:07,250 Tai voimme testata joitakin muita malli. 714 00:39:07,250 --> 00:39:09,230 Kuten sijasta taantumassa tämä paino, 715 00:39:09,230 --> 00:39:12,600 Katsotaanpa taantua sen loki painoa, koska ehkä tehokas painon 716 00:39:12,600 --> 00:39:15,690 mittarilukema on jotenkin ole lineaarinen. 717 00:39:15,690 --> 00:39:18,540 >> Tämä antoi meille r potenssiin on 0,7528. 718 00:39:18,540 --> 00:39:19,610 Joten kokeile tätä. 719 00:39:19,610 --> 00:39:21,485 Tällä kertaa tehkäämme eri muuttujaa, liian. 720 00:39:21,485 --> 00:39:22,500 Model2. 721 00:39:22,500 --> 00:39:24,800 Joten yhteenveto, Model2. 722 00:39:24,800 --> 00:39:28,200 723 00:39:28,200 --> 00:39:31,390 Selvä, joten taas, me saimme parhaiten sopiva viiva täällä. 724 00:39:31,390 --> 00:39:36,160 Ja tämä time-- tämä sanoo, pohjimmiltaan, että aina kun 725 00:39:36,160 --> 00:39:38,090 lisätä painoa auto tekijällä e 726 00:39:38,090 --> 00:39:40,580 menetät näin monta mailia per gallona. 727 00:39:40,580 --> 00:39:43,210 728 00:39:43,210 --> 00:39:50,326 >> Ja niin tällä kertaa meidän vakiojäännöspoikkeama error it-- että ei ole väliä, oikeastaan. 729 00:39:50,326 --> 00:39:53,540 Vakiojäännöspoikkeama on pohjimmiltaan vain keskivirhe 730 00:39:53,540 --> 00:39:57,760 että olet jättänyt sen jälkeen, kun ottaa pois suuntaus linja. 731 00:39:57,760 --> 00:40:02,805 Ja meidän r potenssiin tässä 0,81, joka on vähän parempi kuin mitä 732 00:40:02,805 --> 00:40:07,640 meillä oli ennen, 0.52. 733 00:40:07,640 --> 00:40:09,750 >> Ja niin Nyt lisätä termi tähän regressio. 734 00:40:09,750 --> 00:40:13,020 Joten taantua mailia per gallona sekä log painojen 735 00:40:13,020 --> 00:40:21,130 ja, tehdään, q mailia, neljäsosa mailin aikaa. 736 00:40:21,130 --> 00:40:26,190 OK, sillä on oltava the-- kunnossa, qsec. 737 00:40:26,190 --> 00:40:26,690 Qsec. 738 00:40:26,690 --> 00:40:30,630 739 00:40:30,630 --> 00:40:35,000 Actually-- pahoillani, mitä? 740 00:40:35,000 --> 00:40:37,000 Soitan tämä jotain muustakin Model2. 741 00:40:37,000 --> 00:40:38,000 Soitan tämän model3. 742 00:40:38,000 --> 00:40:40,860 743 00:40:40,860 --> 00:40:42,900 Ja nyt voimme tehdä yhteenveto model3. 744 00:40:42,900 --> 00:40:46,850 745 00:40:46,850 --> 00:40:49,100 Ja niin taas, tämä on pohjimmiltaan mitä voisi odottaa. 746 00:40:49,100 --> 00:40:51,750 Sinulla on positiivinen siepata. 747 00:40:51,750 --> 00:40:54,550 Tehokas kasvava paino on negatiivinen. 748 00:40:54,550 --> 00:40:58,490 Ja tehokas lisäämällä neljäsosa mailin aika 749 00:40:58,490 --> 00:41:02,420 on positiivinen, mutta kuitenkin vähemmän kuin paino. 750 00:41:02,420 --> 00:41:06,010 Nyt intuitiivisesti, voit järkeä tämä sanomalla ajatella urheiluautoja. 751 00:41:06,010 --> 00:41:08,950 Siellä hyvin nopea kiihtyvyys, hyvin lyhyt neljäsosa mailin kertaa. 752 00:41:08,950 --> 00:41:13,729 He myös aikovat käyttää enemmän kaasua, katsoo järkevämpää autot ovat menossa 753 00:41:13,729 --> 00:41:16,020 on hitaampi kiihtyvyys, korkeampi neljäsosa mailin kertaa, 754 00:41:16,020 --> 00:41:20,890 ja käyttää vähemmän kaasua ,, niin korkeampi mailia per gallona. 755 00:41:20,890 --> 00:41:21,390 Suuri. 756 00:41:21,390 --> 00:41:23,431 Ja nyt on aika tontti jotain tällaista. 757 00:41:23,431 --> 00:41:27,810 Joten do-- niin paljas luut voimme tehdä plots-- 758 00:41:27,810 --> 00:41:35,280 koska Olen liittänyt tämän datakehyksen before-- voimme vain tehdä tontteja, paino- mpg. 759 00:41:35,280 --> 00:41:38,762 760 00:41:38,762 --> 00:41:39,720 Tee tämä vähän isompi. 761 00:41:39,720 --> 00:41:55,050 762 00:41:55,050 --> 00:41:57,350 Siellä olemme periaatteessa on sirontakuvaajaan, mutta pisteet 763 00:41:57,350 --> 00:41:58,690 ovat eräänlainen vaikea nähdä tämän. 764 00:41:58,690 --> 00:42:04,860 765 00:42:04,860 --> 00:42:10,900 >> En muista suoralta kädeltä mitä syntaksi on muuttaa juonta. 766 00:42:10,900 --> 00:42:14,100 Joten kai tämä on hyvä aika tuoda esille, 767 00:42:14,100 --> 00:42:18,000 siellä on erittäin mukava sisäänrakennettu apua ominaisuus, apua lainausmerkkejä funktion nimi. 768 00:42:18,000 --> 00:42:21,690 Tuomme esille pohjimmiltaan mitä haluat. 769 00:42:21,690 --> 00:42:28,010 770 00:42:28,010 --> 00:42:32,730 Taidan itse tehdä tämän tyyppi vastaa p pisteille tontteja. 771 00:42:32,730 --> 00:42:34,369 Oliko että muuta mitään? 772 00:42:34,369 --> 00:42:35,160 Ja ei, ei oikeastaan. 773 00:42:35,160 --> 00:42:39,160 774 00:42:39,160 --> 00:42:39,660 Selvä. 775 00:42:39,660 --> 00:42:46,760 776 00:42:46,760 --> 00:42:49,580 >> Jostain syystä, kun tein tätä omasta tietokone jonkin aikaa sitten, 777 00:42:49,580 --> 00:42:52,080 kaikki hajottaa pistettä olivat paljon selkeämpi. 778 00:42:52,080 --> 00:43:06,390 779 00:43:06,390 --> 00:43:13,970 Oli miten oli, ovat hajonta sellainen näkyvissä? 780 00:43:13,970 --> 00:43:15,124 Siellä on yksi siellä. 781 00:43:15,124 --> 00:43:16,165 Harvat, harvat. 782 00:43:16,165 --> 00:43:18,860 783 00:43:18,860 --> 00:43:21,185 Voit tavallaan nähdä heidät, eikö? 784 00:43:21,185 --> 00:43:24,310 Joten jos haluamme lisätä parhaiten sopiva viiva Tämän tontti täällä, joka on vähän paljas 785 00:43:24,310 --> 00:43:29,290 bones-- haluan tehdä vähän mukavampaa. 786 00:43:29,290 --> 00:43:38,075 Tärkeimmät vastaa vs. paino. 787 00:43:38,075 --> 00:43:46,322 788 00:43:46,322 --> 00:43:49,740 Mailia per gallona. 789 00:43:49,740 --> 00:43:53,570 Jälleen voit nähdä, kuinka hyödyllinen valinnaiset argumentit ovat täällä myös 790 00:43:53,570 --> 00:43:58,090 ei tarvitse laittaa asioita tietyssä järjestyksessä näppäimistön perustelut 791 00:43:58,090 --> 00:44:01,600 kun on tontteja, koska nämä ottaa paljon argumentteja. 792 00:44:01,600 --> 00:44:07,490 >> Xlab vastaa paino, paino, tonnia. 793 00:44:07,490 --> 00:44:10,091 794 00:44:10,091 --> 00:44:10,590 Selvä. 795 00:44:10,590 --> 00:44:17,340 796 00:44:17,340 --> 00:44:21,480 OK, joo, tämä laite on on hieman ärsyttävää. 797 00:44:21,480 --> 00:44:30,160 Mutta voit nähdä tavallaan siellä, siellä kuvaajan nimi puolella. 798 00:44:30,160 --> 00:44:35,260 Täällä there's-- pohjassa täällä on akselin tarroja. 799 00:44:35,260 --> 00:44:37,700 En muista suoralta kädeltä mitä komentoja ars-- 800 00:44:37,700 --> 00:44:41,000 mitä toimintoja on lisätä koko mainittuja merkkejä ja otsikot, 801 00:44:41,000 --> 00:44:43,110 mutta ne ovat siellä. 802 00:44:43,110 --> 00:44:46,625 >> Joten jos haluamme lisätä parhaiten sopiva viiva, 803 00:44:46,625 --> 00:44:49,250 voisimme tehdä jotain like-- I on syntaksi kirjoitettu täällä. 804 00:44:49,250 --> 00:44:52,280 805 00:44:52,280 --> 00:45:11,130 Joten muistakaa me vain lisätä malli oli mpg, paino, mtcars. 806 00:45:11,130 --> 00:45:16,470 Joten jos halusin lisätä parhaiten sovitettu linja, voisin tehdä, b rivi malli. 807 00:45:16,470 --> 00:45:18,556 Ja puomi, meillä on paras sopiva viiva. 808 00:45:18,556 --> 00:45:19,970 Se on eräänlainen vaikea nähdä uudelleen. 809 00:45:19,970 --> 00:45:22,178 Olen melko pahoillani teknologinen vaikeuksia. 810 00:45:22,178 --> 00:45:25,230 Mutta se toimii pohjimmiltaan ylhäältä vasemmalta alas oikealle. 811 00:45:25,230 --> 00:45:27,550 >> Ja jos asteikolla oli isompi, voit nähdä 812 00:45:27,550 --> 00:45:31,260 että leikkauspiste on mitä voit löytää yhteenvedosta tilastoista 813 00:45:31,260 --> 00:45:34,790 jos kirjoitat yhteenveto malli. 814 00:45:34,790 --> 00:45:40,130 OK, joten toivon, että kaikki saa jotain tunnetta mitä 815 00:45:40,130 --> 00:45:42,030 R on, mitä se on hyvä. 816 00:45:42,030 --> 00:45:45,520 Voisit tehdä paljon mukavampaa tontteja kuin tämä omaa aikaa, jos haluat. 817 00:45:45,520 --> 00:45:50,100 818 00:45:50,100 --> 00:45:53,950 >> Joten ulkomainen toiminto rajapintana. 819 00:45:53,950 --> 00:46:00,330 Tämä on jotain, joka ei ole tyypillisesti katettu Johdantoluennot 820 00:46:00,330 --> 00:46:03,560 tai johdanto mitään r. 821 00:46:03,560 --> 00:46:05,584 Se ei ole todennäköistä olet menossa tarvitse sitä. 822 00:46:05,584 --> 00:46:08,000 Kuitenkin, löysin sen hyödylliseksi omia projekteja aiemmin. 823 00:46:08,000 --> 00:46:10,984 Ja ei ole hyvä opetusohjelma sitä verkossa. 824 00:46:10,984 --> 00:46:12,900 Joten olen juuri menossa kiire teille kaikille läpi tämän 825 00:46:12,900 --> 00:46:16,606 ja sitten olet vapaa lähtemään. 826 00:46:16,606 --> 00:46:18,480 Ja niin ulkomaisten toiminto käyttöliittymä on mitä 827 00:46:18,480 --> 00:46:23,130 voit soittaa ulos nähdä toimintoja R. Sisäisesti 828 00:46:23,130 --> 00:46:29,850 R on rakennettu C. R: n aritmeettinen on vain C: n 64-bittinen liukuluku aritmeettinen, 829 00:46:29,850 --> 00:46:32,852 joka on double [kuultavissa]. 830 00:46:32,852 --> 00:46:35,060 Ja saatat haluta tehdä tämä joukko syitä. 831 00:46:35,060 --> 00:46:39,250 Yhden, R tulkitaan, se on ei käännetty alas konekielelle. 832 00:46:39,250 --> 00:46:42,170 Joten voit kirjoittaa uudelleen sisempi silmukoita C ja sitten saada 833 00:46:42,170 --> 00:46:45,920 etu käyttää R. Like se on hieman helpompaa kuin C 834 00:46:45,920 --> 00:46:48,899 Se on parempi kuvaajien tilat ja vaikka mitä. 835 00:46:48,899 --> 00:46:51,690 Ja kun vielä voi saada huippunopeus ulos sisemmän silmukoita, 836 00:46:51,690 --> 00:46:53,650 joka on, jos todella tarvitset sitä. 837 00:46:53,650 --> 00:46:56,330 >> Uudelleenkäytön nykyisten C kirjastot, se on myös tärkeää. 838 00:46:56,330 --> 00:47:00,320 Jos sinulla on C kirjasto, kuten, En tiedä, Fourier, 839 00:47:00,320 --> 00:47:05,190 tai joitakin hyvin Archean tilastot käytetty menettely 840 00:47:05,190 --> 00:47:09,470 korkean energian astrofysiikan tai jotain, en tiedä. 841 00:47:09,470 --> 00:47:13,058 Korkea energian astrofysiikka ei edes ajatella, mielestäni. 842 00:47:13,058 --> 00:47:16,480 Mutta voit tehdä sen sijaan, kirjoittaa Native R -portti niistä. 843 00:47:16,480 --> 00:47:22,725 Sekä the-- ja uudelleen, kuten jos katso useimmissa R oletus kirjastoissa, 844 00:47:22,725 --> 00:47:25,600 on sisäosat, sisäosat ovat aio käyttää ulkomaisia ​​toimintoa 845 00:47:25,600 --> 00:47:26,724 käyttöliittymä hyvin laajasti. 846 00:47:26,724 --> 00:47:31,630 He ovat asioita, kuten Fourier muuntaa tai computing korrelaatio 847 00:47:31,630 --> 00:47:34,890 kertoimet kirjoitettu C, ja he vain R kääreet ympärillä. 848 00:47:34,890 --> 00:47:38,230 Käyttöliittymä on vähän vaikea. Luulisin 849 00:47:38,230 --> 00:47:43,750 sen vaikeus on liioiteltu paljon ohjeita löydät. 850 00:47:43,750 --> 00:47:46,200 Mutta silti, se on vähän sekava. 851 00:47:46,200 --> 00:47:48,650 Ja en ole pystynyt löytää hyvä opetusohjelma se, 852 00:47:48,650 --> 00:47:51,980 joten tämä on se juuri nyt. 853 00:47:51,980 --> 00:47:55,360 Tämäkin koko segmentin on enemmän myöhempää käyttöä varten. 854 00:47:55,360 --> 00:47:57,687 Älä ole huolissasi kopiointi kaiken alas juuri nyt. 855 00:47:57,687 --> 00:48:00,020 Joten seuraavat ohjeet ovat Unix-järjestelmät, 856 00:48:00,020 --> 00:48:05,150 Linux, BSD, OS X En tiedä miten tämä toimii Windows, 857 00:48:05,150 --> 00:48:08,280 mutta kiitos vain älä tee Opinnäytetyö Windows. 858 00:48:08,280 --> 00:48:10,790 859 00:48:10,790 --> 00:48:12,460 Et todellakaan halua. 860 00:48:12,460 --> 00:48:14,770 Unix on paljon parempi asettaa up rento ohjelmointia. 861 00:48:14,770 --> 00:48:19,320 862 00:48:19,320 --> 00:48:21,390 Joten, pohjimmiltaan ulkomaisia toiminto rajapintana. 863 00:48:21,390 --> 00:48:24,420 Jos haluat kirjoittaa C toiminto käytettäväksi R, 864 00:48:24,420 --> 00:48:27,250 se on otettava kaikki väitteet osoittimia. 865 00:48:27,250 --> 00:48:30,666 >> Joten yhden arvojen, tämä tarkoittaa että se osoitti arvoa. 866 00:48:30,666 --> 00:48:33,040 Ja paneelit, tämä on osoitin että ensimmäinen elementti, joka 867 00:48:33,040 --> 00:48:36,750 on mitä joukko nimiä oikeastaan ​​tarkoittaa. 868 00:48:36,750 --> 00:48:40,140 Tämäkin on jotain sinun pitäisi olla melko täysin alas jälkeen s asettaa viisi. 869 00:48:40,140 --> 00:48:43,334 Array nimet ovat vain osoittimia ensimmäiseen elementtiin, 870 00:48:43,334 --> 00:48:44,750 Liukulukujen tyyppi on kaksinkertainen. 871 00:48:44,750 --> 00:48:47,310 Ja funktio on palata mitätön. 872 00:48:47,310 --> 00:48:50,810 Ainoa tapa, että se voi todella kertoa R mitä tapahtui 873 00:48:50,810 --> 00:48:54,410 on muuttamalla muistin R antoi sitä kautta ulkomaisen toiminto 874 00:48:54,410 --> 00:48:54,910 liitäntä. 875 00:48:54,910 --> 00:48:58,180 876 00:48:58,180 --> 00:49:00,127 >> Joten olen kirjoittanut tämän Esimerkiksi täällä, tämä on 877 00:49:00,127 --> 00:49:02,460 toiminto, joka laskee käyttö piste kahden vektorin. 878 00:49:02,460 --> 00:49:05,060 Se kestää kaksi perustelua, vec1, vec2, jotka ovat vektorit itse, 879 00:49:05,060 --> 00:49:06,934 ja sitten n, joka on pituus, koska uudelleen, 880 00:49:06,934 --> 00:49:12,630 R on rakennettu [äänetön] selvittää pituus vektorien, mutta C-ei. 881 00:49:12,630 --> 00:49:16,182 C, vektoreita on mielivaltainen rajattu murikka muistia. 882 00:49:16,182 --> 00:49:17,890 Joten miten voit laskea piste tuotteet 883 00:49:17,890 --> 00:49:23,470 on juuri perustanut tätä parametri nollaan ja sitten kerrata kautta 884 00:49:23,470 --> 00:49:28,760 1 tähti n, koska n on osoitin pituus, 885 00:49:28,760 --> 00:49:32,929 vain lisätä jotain tätä parametri. 886 00:49:32,929 --> 00:49:34,970 Ja se voi olla hyvä käytäntö jos aiot tehdä 887 00:49:34,970 --> 00:49:37,270 tämä kirjoittaa kaksi erillistä C toimintoja. 888 00:49:37,270 --> 00:49:41,970 Yksi niistä has-- Yksi heistä vain vie argumentit ja tyypit 889 00:49:41,970 --> 00:49:43,970 että ne tavallisesti olla C. 890 00:49:43,970 --> 00:49:47,780 >> Joten se vie array väitteet osoittimia. 891 00:49:47,780 --> 00:49:57,090 Mutta yhden arvo argumentteja kuin n, se vain vie niin arvoja kopioida, 892 00:49:57,090 --> 00:49:57,917 ilman viitteitä. 893 00:49:57,917 --> 00:49:59,750 Ja sitten se ei [Äänetön] ulos osoitin. 894 00:49:59,750 --> 00:50:01,290 Ja sitten voit olla eri, periaatteessa, 895 00:50:01,290 --> 00:50:03,623 kääre toiminto että pohjimmiltaan käsittelee vaatimuksia 896 00:50:03,623 --> 00:50:07,740 ulkomaisen toiminto liitäntä sinulle. 897 00:50:07,740 --> 00:50:11,840 >> Miten soitat tämän R on, kerran sinulla on toiminto kirjoitettu C, 898 00:50:11,840 --> 00:50:17,770 kirjoitat R cmd shlib, R komento jaettu kirjasto, 899 00:50:17,770 --> 00:50:20,110 foo piste C, tai mitä tahansa tiedoston nimi on, 900 00:50:20,110 --> 00:50:23,020 ja OS kuori ei R terminaali. 901 00:50:23,020 --> 00:50:25,200 Ja tämä luo kirjasto foo piste niin. 902 00:50:25,200 --> 00:50:28,180 Ja sitten voit ladata sen meidän script tai interaktiivisesti 903 00:50:28,180 --> 00:50:32,310 komennolla dyn piste kuormitus. 904 00:50:32,310 --> 00:50:35,720 Sitten on funktio T nimeltään piste C. 905 00:50:35,720 --> 00:50:39,310 >> Tämä vie argumentit, jotka ovat ensimmäinen funktion nimi C 906 00:50:39,310 --> 00:50:40,970 että haluat soittaa. 907 00:50:40,970 --> 00:50:43,920 Ja sitten kaikki parametrit tuon toiminnan, 908 00:50:43,920 --> 00:50:45,420 ne on oikeassa järjestyksessä. 909 00:50:45,420 --> 00:50:48,580 Sinun täytyy käyttää näitä tyyppi pakottamista toimii kokonaisluku, kuin 910 00:50:48,580 --> 00:50:52,050 kaksinkertainen, kuten luonne, ja looginen. 911 00:50:52,050 --> 00:50:54,710 Ja sitten kun se palaa luettelo, joka taas on vain 912 00:50:54,710 --> 00:50:57,550 liittyvä joukko parametrien nimet ja arvot 913 00:50:57,550 --> 00:51:00,950 kun toiminto on loppunut. 914 00:51:00,950 --> 00:51:08,520 >> Joten tässä tapauksessa, koska piste tuot on perustelut vec1, vec2, ja int n, n ulos. 915 00:51:08,520 --> 00:51:11,980 Dot C meillä on piste tuot, funktion nimi 916 00:51:11,980 --> 00:51:16,250 olemme soittaa, vec1, vec2, tyyppi pakottaa. 917 00:51:16,250 --> 00:51:20,060 Pituus joko vektori, Olen vain valitsi vec1 mielivaltaisesti. 918 00:51:20,060 --> 00:51:25,479 Se olisi vakaampi sanoa s kokonaisluku min pituus vec1, pituus vec2. 919 00:51:25,479 --> 00:51:27,520 Sitten vain kaksinkertainen nolla, koska emme oikeastaan 920 00:51:27,520 --> 00:51:29,644 välitä mitä menee ulos parametri koska olemme 921 00:51:29,644 --> 00:51:32,270 asettamalla sen arvoksi nolla joka tapauksessa. 922 00:51:32,270 --> 00:51:37,560 >> Ja sitten tulokset tulevat olemaan iso liittyy joukko pohjimmiltaan 923 00:51:37,560 --> 00:51:42,090 vec1 on mitä tahansa, vec2 on mitä tahansa. 924 00:51:42,090 --> 00:51:44,330 Mutta olemme kiinnostuneita pois, jotta voimme saada että ulos. 925 00:51:44,330 --> 00:51:47,780 Tämä on jälleen hyvin lelu esimerkki Ulkomaisen toiminto rajapintana. 926 00:51:47,780 --> 00:51:54,160 Mutta jos sinulla on laskea piste tuotteet massiivinen vektoreiden silmukoita, 927 00:51:54,160 --> 00:51:56,960 tai jos sinun täytyy tehdä jotain muuta silmukka, 928 00:51:56,960 --> 00:51:59,850 ja et halua luottaa R, joka ei ole hieman yläpuolella 929 00:51:59,850 --> 00:52:02,830 rakennettu, tämä voi olla hyödyllistä. 930 00:52:02,830 --> 00:52:05,870 >> Jälleen, tämä ei ole yleensä johdanto aihe R. 931 00:52:05,870 --> 00:52:08,571 Se ei ole kovin hyvin dokumentoitu. 932 00:52:08,571 --> 00:52:11,070 Olen vain myös sen, koska Löysin sen hyödyllistä aikaisemmin. 933 00:52:11,070 --> 00:52:13,654 Joten, huonoista käytännöistä. 934 00:52:13,654 --> 00:52:15,820 Mainitsin, että on olemassa silmukan sisään toiminto. 935 00:52:15,820 --> 00:52:21,150 Yleensä sinun ei pitäisi, vuonna kieli, käytä sitä. 936 00:52:21,150 --> 00:52:26,100 Perustuu miten R toteuttaa iteroinnin sisäisesti, se voi olla hidasta. 937 00:52:26,100 --> 00:52:28,540 He vain myös ruma. 938 00:52:28,540 --> 00:52:32,410 >> R käsittelee vektoreita erittäin hienosti, joten Usein et tarvitse käyttää sitä. 939 00:52:32,410 --> 00:52:35,050 940 00:52:35,050 --> 00:52:38,900 Sitten voit yleensä korvata vektori usein 941 00:52:38,900 --> 00:52:42,490 näihin toimintoihin sanottujen korkean Jotta toimintoja, Kartta, Vähennä, 942 00:52:42,490 --> 00:52:44,404 Etsi, tai suodatin. 943 00:52:44,404 --> 00:52:46,320 Otan vain antaa joitakin esimerkkejä siitä, mitä nämä tekevät. 944 00:52:46,320 --> 00:52:49,957 Kartta on korkeamman asteen funktio koska se vie toimivat argumentti. 945 00:52:49,957 --> 00:52:52,290 Joten voit antaa sen funktio, voit antaa sen jono, 946 00:52:52,290 --> 00:52:54,640 ja se soveltaa toiminto jokaiseen alkio 947 00:52:54,640 --> 00:52:55,681 ja palauttaa uuden taulukon. 948 00:52:55,681 --> 00:52:58,035 949 00:52:58,035 --> 00:53:00,160 Vähennä, pohjimmiltaan annat se joukko, annat sen 950 00:53:00,160 --> 00:53:02,930 funktio, joka ottaa kaksi argumenttia. 951 00:53:02,930 --> 00:53:07,100 Sitä sovelletaan toiminto ensimmäinen, Ensimmäinen väite joitakin käynnistin arvo. 952 00:53:07,100 --> 00:53:09,440 Sitten tämä tulos toisessa. 953 00:53:09,440 --> 00:53:12,590 Sitten tämä tulos kolmannella, sitten että tulostaan ​​neljännellä. 954 00:53:12,590 --> 00:53:14,870 Ja palata sitten, kun se saa loppuun. 955 00:53:14,870 --> 00:53:17,620 Niinpä esimerkiksi, jos haluat laskea summa kaikki tekijät 956 00:53:17,620 --> 00:53:23,240 array, kuin voisi kutsua vähentää kanssa [äänetön] vähentää lisäksi 957 00:53:23,240 --> 00:53:26,620 toiminto, kuten func , b, palauta ja b. 958 00:53:26,620 --> 00:53:28,960 Ja sitten alkaa arvo 0. 959 00:53:28,960 --> 00:53:32,950 >> Ja kaikki nämä, voit löytää ne kuvattu R asiakirjat, 960 00:53:32,950 --> 00:53:35,720 tahansa oppikirjan Functional Programming. 961 00:53:35,720 --> 00:53:38,330 Mukana on myös tämän luokan toiminnot nimeltään sovelletaan toimintoja, 962 00:53:38,330 --> 00:53:42,807 jonka minä don't-- he hieman vaikea selittää, 963 00:53:42,807 --> 00:53:45,640 mutta jos tarkastellaan [äänetön] varattu että minä mainittu alussa, 964 00:53:45,640 --> 00:53:48,615 hän selittää niitä melko hyvin hänen liite T ohjelmointi. 965 00:53:48,615 --> 00:53:51,599 966 00:53:51,599 --> 00:53:53,390 Lisää käytännöistä, lisäämällä vektoreihin. 967 00:53:53,390 --> 00:53:57,570 968 00:53:57,570 --> 00:53:58,070 Joo? 969 00:53:58,070 --> 00:54:01,651 970 00:54:01,651 --> 00:54:02,900 Minun pitäisi korjata, että. 971 00:54:02,900 --> 00:54:07,450 Että ensimmäisellä rivillä, vec nuoli, että nuoli ei pitäisi olla siellä. 972 00:54:07,450 --> 00:54:10,920 Voit määrittää vektori, Jälleen ottaa sen pituus plus 1 973 00:54:10,920 --> 00:54:13,220 ja määrittämällä jotain arvoa että. 974 00:54:13,220 --> 00:54:18,970 Joka laajentaa vektori, tai et voi tehdä vec tasavertaisten C, vec newvalue. 975 00:54:18,970 --> 00:54:21,540 Uudelleen, jos käytät C: yksi argumentti vektorina, 976 00:54:21,540 --> 00:54:23,300 Tuloksena hierarkia saa litistetty. 977 00:54:23,300 --> 00:54:27,160 Joten sinun täytyy vain saada vektori joka on pidentää 1. 978 00:54:27,160 --> 00:54:30,410 Älä koskaan tee tätä. 979 00:54:30,410 --> 00:54:33,330 >> Miksi te ei pitäisi tehdä tätä on tämä. 980 00:54:33,330 --> 00:54:37,430 Kun jakaa vektori, se antaa sille tietty murikka muistia. 981 00:54:37,430 --> 00:54:40,680 Jos nostat että vektori kokoa, se on kohdentaa uudelleen vektori 982 00:54:40,680 --> 00:54:43,820 jossain muualla. 983 00:54:43,820 --> 00:54:46,980 Ja niin uudelleen jakaminen on melko kallista. 984 00:54:46,980 --> 00:54:50,530 En aio mennä yksityiskohtiin siitä, miten muisti allokoijiksi toteutetaan 985 00:54:50,530 --> 00:54:57,280 käyttöjärjestelmän tasolla, mutta se vie paljon aikaa 986 00:54:57,280 --> 00:54:58,962 löytää uusia kimpale muistia. 987 00:54:58,962 --> 00:55:00,920 Ja myös, jos olet uudelleen jakamisesta paljon ja paljon 988 00:55:00,920 --> 00:55:03,500 asteittain suurempi paloina, voit päätyä 989 00:55:03,500 --> 00:55:06,420 jotain kutsutaan muistin pirstoutuminen, 990 00:55:06,420 --> 00:55:09,390 jos vapaata muistia on jaettu paljon vähän lohkojen 991 00:55:09,390 --> 00:55:11,500 muistiin allokoijiksi näkökulmasta. 992 00:55:11,500 --> 00:55:15,340 Ja se saa kovemmin ja kovemmin löytää muisti muita asioita. 993 00:55:15,340 --> 00:55:19,455 Joten sen sijaan, jos haluat tehdä tämän, jos sinun täytyy kasvaa vektori toisesta päästä 994 00:55:19,455 --> 00:55:24,240 seuraavaan, sen sijaan, että liittämällä siihen jatkuvasti, sinun tulisi etukäteen jaettava. 995 00:55:24,240 --> 00:55:29,310 Vec nuoli, vektori pituus vastaa 1000, tai mitä tahansa. 996 00:55:29,310 --> 00:55:33,200 >> Ja sitten voit vain määrittää vektorin arvot yksi 997 00:55:33,200 --> 00:55:36,000 ajan kuluttua olet varattu sitä kerran. 998 00:55:36,000 --> 00:55:40,140 Törmäsin tähän, jälleen, minun kesätyö kun olin kirjallisesti NRA ero 999 00:55:40,140 --> 00:55:42,120 yhtälö ratkaisija. 1000 00:55:42,120 --> 00:55:43,180 Ei symbolinen numeerinen. 1001 00:55:43,180 --> 00:55:49,290 Ajatuksena on, että kun olet yksi vastinetta ratkaisu, 1002 00:55:49,290 --> 00:55:51,240 käytät että laskea seuraavaan. 1003 00:55:51,240 --> 00:55:53,700 Joten luonnollinen naiivi kaltevuus oli sanoa OK, 1004 00:55:53,700 --> 00:55:56,930 joten Aloitan vektori se arvoon olennaisesti. 1005 00:55:56,930 --> 00:56:01,260 Laske siitä seuraava arvo joka menee päälle minun ratkaisu vektori, 1006 00:56:01,260 --> 00:56:02,630 ja liitettävä kyseinen. 1007 00:56:02,630 --> 00:56:05,290 >> Luoda jotain muuta, liitettävä kyseinen. 1008 00:56:05,290 --> 00:56:08,120 Se meni hyvin, hyvin hitaasti. 1009 00:56:08,120 --> 00:56:11,540 Ja kun tajusin tämän ja Muutin järjestelmä 1010 00:56:11,540 --> 00:56:16,020 mistä lisäämällä tähän vektori kuten 10000 100000 kertaa, 1011 00:56:16,020 --> 00:56:18,910 vain ennalta myöntämällä vektori ja juuri käynnissä kanssa. 1012 00:56:18,910 --> 00:56:22,100 Sain yli 1000 kertaiseksi nopeuttaa. 1013 00:56:22,100 --> 00:56:26,280 Joten tämä on hyvin yleinen ansa R ohjelmointia. 1014 00:56:26,280 --> 00:56:31,560 Jos haluat rakentaa vektori pala palalta, ennen jaettava. 1015 00:56:31,560 --> 00:56:35,360 1016 00:56:35,360 --> 00:56:40,240 >> Toinen yleinen matka up-- tämä on viimeinen dia, älä worry-- on virheiden käsittelyä. 1017 00:56:40,240 --> 00:56:42,890 R, rehellisesti, ei todella tehdä tämän hyvin. 1018 00:56:42,890 --> 00:56:45,010 On olemassa paljon ongelmia, jotka voivat ilmaantua. 1019 00:56:45,010 --> 00:56:48,360 Esimerkiksi, jos saat array tai vektorin pois toiminto 1020 00:56:48,360 --> 00:56:52,377 että uskoit yksittäinen arvo tulevan, tai päinvastoin, 1021 00:56:52,377 --> 00:56:55,460 ja ohitat sen osaksi toiminto Kirjoitit odottaa yksi arvo, 1022 00:56:55,460 --> 00:56:57,270 joka voi olla ongelma. 1023 00:56:57,270 --> 00:57:01,440 >> Tietyt toiminnot palata null samoin vaikkapa 1024 00:57:01,440 --> 00:57:05,560 lukeminen olematon Näppäile luettelosta. 1025 00:57:05,560 --> 00:57:08,527 Mutta null ei ole kuin C jossa jos yrität lukea 1026 00:57:08,527 --> 00:57:11,360 vanhasta osoitin, [kuulumaton] null osoitin, se vain Seg viat 1027 00:57:11,360 --> 00:57:14,109 ja jos olet oman debuggeri se kertoo tarkalleen missä olet. 1028 00:57:14,109 --> 00:57:17,080 1029 00:57:17,080 --> 00:57:20,772 Sen sijaan, null tulee do-- toimintoja tekee arvaamattomia asioita 1030 00:57:20,772 --> 00:57:21,730 jos he kädellä null. 1031 00:57:21,730 --> 00:57:24,575 Kuten jos olet luovutti max null, se tulee antaa sinulle negatiivista ääretön. 1032 00:57:24,575 --> 00:57:27,230 1033 00:57:27,230 --> 00:57:28,190 Ja niin, joo. 1034 00:57:28,190 --> 00:57:30,880 1035 00:57:30,880 --> 00:57:32,630 Ja niin tämä tapahtui minulle kerran, kun olin 1036 00:57:32,630 --> 00:57:34,771 muuttunut joukko kentät listallani rakenne 1037 00:57:34,771 --> 00:57:37,520 kerran muuttamatta niitä muualta kun luin niistä. 1038 00:57:37,520 --> 00:57:40,670 Ja sitten sain kaikenlaisia ​​satunnaisia äärettömyys tulokset pulppuaa 1039 00:57:40,670 --> 00:57:43,080 ja minulla ei ole aavistustakaan, mistä he tulivat. 1040 00:57:43,080 --> 00:57:45,310 Ja valitettavasti siellä mitään todellista R tiukkaa tilassa 1041 00:57:45,310 --> 00:57:48,940 jossa voit sanoa jos jotain näyttää siltä kuin se voisi olla virhe, 1042 00:57:48,940 --> 00:57:51,960 vain lopettaa siellä niin voin olla kurinalaista ja korjata sen. 1043 00:57:51,960 --> 00:57:55,282 1044 00:57:55,282 --> 00:57:57,240 On kuitenkin jotain kutsutaan pysäkki jos ei. 1045 00:57:57,240 --> 00:58:00,480 Tämä vastaa C: n väittävät, jos olet puhunut siitä. 1046 00:58:00,480 --> 00:58:02,690 En usko C väittää on luento aihe, 1047 00:58:02,690 --> 00:58:06,370 mutta ryhmänjohtaja olisi voitu mennä sen yli. 1048 00:58:06,370 --> 00:58:10,393 Ja pysähtyy, jos ei periaatteessa ottaa mitään predikaatti, niin lausunnot, jotka 1049 00:58:10,393 --> 00:58:11,824 voi olla totta vai tarua. 1050 00:58:11,824 --> 00:58:13,490 Ja jos se on väärä, se pysähtyy ohjelmansa. 1051 00:58:13,490 --> 00:58:18,260 Se kertoo sinulle, mitä linja on olivat ja missä kunnossa epäonnistui. 1052 00:58:18,260 --> 00:58:21,910 >> Ja tämä erittäin hyödyllistä, esimerkiksi, järki tarkkailun, toiminto tuloa. 1053 00:58:21,910 --> 00:58:25,110 Joten jos sinulla on funktio ja odotat, vaikkapa 1054 00:58:25,110 --> 00:58:29,640 jos sinun pitäisi antaa minulle päivämäärä, haluan päivämäärät on vain vektori, jonka pituus on 1 1055 00:58:29,640 --> 00:58:31,735 ja jossain välillä 1 ja 31. 1056 00:58:31,735 --> 00:58:34,420 1057 00:58:34,420 --> 00:58:36,170 Ja jos ei, tiedän jotain on mennyt pieleen. 1058 00:58:36,170 --> 00:58:40,280 Ja päätän lopettaa siellä ennen tämän on satunnaisia ​​kolhi vaikutuksista koodilla 1059 00:58:40,280 --> 00:58:44,190 että se on vaikeampi jäljittää kautta. 1060 00:58:44,190 --> 00:58:47,170 Niin, että yksi mahdollinen käyttää pysähtyy, jos ei. 1061 00:58:47,170 --> 00:58:48,660 >> Oli miten oli, OK. 1062 00:58:48,660 --> 00:58:49,690 Niin, että lopussa. 1063 00:58:49,690 --> 00:58:51,290 Kiitos niin paljon, että tulitte. 1064 00:58:51,290 --> 00:58:53,710 Olen listalla amatööri tässä. 1065 00:58:53,710 --> 00:58:57,270 Pahoillani jos olet kyllästynyt tai sekava tai mitä olet. 1066 00:58:57,270 --> 00:59:01,670 Olen iloinen ottaa kysymyksiin sähköpostitse klo connorharris@college.harvard.edu. 1067 00:59:01,670 --> 00:59:07,230 Tämä koskee myös kaikille katsomassa tämän elää tai myöhemmin. 1068 00:59:07,230 --> 00:59:10,190 Myös, vaikka en ole TF, olen myös hyvin 1069 00:59:10,190 --> 00:59:13,900 halukas toimimaan epävirallinen neuvonantaja kaikille, jotka on 1070 00:59:13,900 --> 00:59:15,460 käyttämällä R opinnäytetyön. 1071 00:59:15,460 --> 00:59:19,900 >> Jos haluat, että sitten vain puhua TF 1072 00:59:19,900 --> 00:59:23,750 ja sitten kirjoittaa minulle sähköpostia niin Tiedän mitä olet työskennellyt 1073 00:59:23,750 --> 00:59:26,680 ja niin voin perustaa kokous kertaa, jos haluat. 1074 00:59:26,680 --> 00:59:27,990 Joten jälleen, paljon kiitoksia. 1075 00:59:27,990 --> 00:59:28,960 Toivottavasti pidit siitä. 1076 00:59:28,960 --> 00:59:29,450 >> Yleisö: [äänetön]. 1077 00:59:29,450 --> 00:59:30,617 >> CONNER HARRIS: Tietenkin. 1078 00:59:30,617 --> 00:59:34,910 >> Yleisö: Millainen projekti olisi CS opiskelija käyttää R? 1079 00:59:34,910 --> 00:59:37,427 1080 00:59:37,427 --> 00:59:40,510 CONNER HARRIS: Joten jos olet ei tehdä jotain, joka on puhtaasti data mining, 1081 00:59:40,510 --> 00:59:43,790 esimerkiksi, ja siellä on paljon asioita 1082 00:59:43,790 --> 00:59:46,692 voisit tehdä, että tiedot kaivos- ja koneoppiminen. 1083 00:59:46,692 --> 00:59:48,900 Haluat ehkä käyttää R osa jotain. 1084 00:59:48,900 --> 00:59:52,022 Toin esille, alun perin, esimerkiksi ja jos olet kirjoittamassa sivusto 1085 00:59:52,022 --> 00:59:54,730 ja haluat käyttää automatisoituja tilastollinen analyysi palvelimen 1086 00:59:54,730 --> 00:59:57,990 kirjautuu tiettyyn aikaan joka päivä, jotka saattavat olla jotain, joka on 1087 00:59:57,990 --> 01:00:01,260 erittäin helppo tehdä vain lyhyesti R skripti, voit ajastaa 1088 01:00:01,260 --> 01:00:04,200 juosta joka yö, esimerkiksi. 1089 01:00:04,200 --> 01:00:06,550 >> Ja olen varma, jos siellä mitään syytä sinun 1090 01:00:06,550 --> 01:00:11,520 haluavat tilastoja tai kuvaajien ominaisuuksia ja on tämä ajaa automaattisesti sen sijaan 1091 01:00:11,520 --> 01:00:13,790 ottaa vuorovaikutuksessa asioita Excelissä, 1092 01:00:13,790 --> 01:00:16,750 esimerkiksi, että on jotain saatat haluta käyttää R. 1093 01:00:16,750 --> 01:00:21,190 Joten kysyttävää ennen kuin lähden? 1094 01:00:21,190 --> 01:00:21,690 Ei? 1095 01:00:21,690 --> 01:00:24,960 Hyvä, hyvin, jälleen, kiitos kovasti tulossa. 1096 01:00:24,960 --> 01:00:29,417