1 00:00:00,000 --> 00:00:05,691 2 00:00:05,691 --> 00:00:07,690 CONNOR HARRIS: Ikka arvan, et mõned põnevad video 3 00:00:07,690 --> 00:00:12,570 toodetud professionaalne nõustamine mis kasutab R palju tööd. 4 00:00:12,570 --> 00:00:16,329 >> Jutustaja: Mis on selle taga statistika analytics ja visualiseerimine 5 00:00:16,329 --> 00:00:19,770 et tänapäeva säravamaid andmeid teadlased ja ärijuhte tugineda 6 00:00:19,770 --> 00:00:22,012 teha võimas otsuseid? 7 00:00:22,012 --> 00:00:23,540 Sa ei pruugi alati näha. 8 00:00:23,540 --> 00:00:24,790 Aga see on olemas. 9 00:00:24,790 --> 00:00:29,460 Seda nimetatakse R, avatud lähtekoodiga R-- statistilise programmeerimiskeelt 10 00:00:29,460 --> 00:00:32,630 et andmed eksperdid maailma kasutamise üle kõike 11 00:00:32,630 --> 00:00:35,350 alates kaardistamine paljusid sotsiaalseid ja turunduse trendid Internetis 12 00:00:35,350 --> 00:00:39,210 arendamisele finants- ja kliima mudeleid, mis aitab juhtida meie majanduse 13 00:00:39,210 --> 00:00:40,780 ja kogukondade. 14 00:00:40,780 --> 00:00:44,910 >> Aga mida täpselt on R ja kust R alustada? 15 00:00:44,910 --> 00:00:48,620 Noh algselt R alustas Siin on kaks professorit 16 00:00:48,620 --> 00:00:51,950 kes tahtsid paremat statistilist platvorm oma õpilastele. 17 00:00:51,950 --> 00:00:56,030 Nii nad lõid modelleeritud pärast statistilise keele S. 18 00:00:56,030 --> 00:01:00,480 Nad koos paljude teistega, hoida kallal ja kasutades R, 19 00:01:00,480 --> 00:01:05,489 luua vahendeid R ja leida uusi rakendusi R iga päev. 20 00:01:05,489 --> 00:01:07,750 >> Tänu sellele on maailma kogukonna jõupingutusi, 21 00:01:07,750 --> 00:01:11,850 R muudkui kasvas tuhandeid kasutaja loodud raamatukogud ehitatud 22 00:01:11,850 --> 00:01:15,500 suurendada R funktsionaalsuse ja Rahvas pärineva kvaliteedi kinnitamise 23 00:01:15,500 --> 00:01:19,740 ja toetust enim tunnustatud tööstuse juhid igas valdkonnas, et 24 00:01:19,740 --> 00:01:25,040 kasutab R. Milline on suur, sest R on parim, mida ta teeb. 25 00:01:25,040 --> 00:01:28,540 Noored eksperdid kiiresti ja lihtsalt tõlgendada, suhelda, 26 00:01:28,540 --> 00:01:33,790 ja visualiseerida andmeid, mis näitab nende kiiresti kasvav kogukond R kasutajat üle maailma 27 00:01:33,790 --> 00:01:36,380 ja kuidas avatud lähtekoodiga R jätkuvalt kujundada 28 00:01:36,380 --> 00:01:39,340 Tulevikus statistiliste analüüsi ja andmete teadust. 29 00:01:39,340 --> 00:01:44,660 30 00:01:44,660 --> 00:01:47,710 >> CONNOR HARRIS: OK, suur. 31 00:01:47,710 --> 00:01:50,360 Nii et minu enda esitlus on natuke rohkem kaine. 32 00:01:50,360 --> 00:01:54,380 See ei kaasne nii palju põnev taustamuusika. 33 00:01:54,380 --> 00:01:59,160 Aga kui sa nägid videot, R on omamoodi Üldise eesmärgi programmi keelt. 34 00:01:59,160 --> 00:02:03,720 Aga see loodi peamiselt Statistilise töö. 35 00:02:03,720 --> 00:02:07,980 >> Nii et see on mõeldud statistika andmete analüüs, andmete hankimiseks. 36 00:02:07,980 --> 00:02:12,420 Ja nii näed seda palju disaini valikuid, et tegijate R 37 00:02:12,420 --> 00:02:13,320 tehtud. 38 00:02:13,320 --> 00:02:15,472 See on mõeldud suuresti, inimesed, kes ei ole 39 00:02:15,472 --> 00:02:17,930 ekspertide programmeerimine, kes lihtsalt pealevõtmine programmeerimine 40 00:02:17,930 --> 00:02:23,460 küljel, et nad saaksid teha oma tööd ühiskonnaõpetus või statistika 41 00:02:23,460 --> 00:02:25,440 või mis iganes. 42 00:02:25,440 --> 00:02:27,850 >> See on palju väga olulisi erinevusi C. 43 00:02:27,850 --> 00:02:33,200 Aga süntaks ja paradigmad et ta kasutab on üldjoontes samad. 44 00:02:33,200 --> 00:02:36,830 Ja sa ei tohiks tunda päris palju kodus õigus ära nahkhiir. 45 00:02:36,830 --> 00:02:38,520 See on hädavajalik keeles. 46 00:02:38,520 --> 00:02:40,260 >> Ära muretse liiga palju, et Kui sa ei tea sõna. 47 00:02:40,260 --> 00:02:42,676 Aga seal on vahet vahel hädavajalik, deklaratiivne, 48 00:02:42,676 --> 00:02:43,810 ja funktsionaalne. 49 00:02:43,810 --> 00:02:47,600 Hädavajalik tähendab lihtsalt teha avaldused, mis on põhimõtteliselt käske. 50 00:02:47,600 --> 00:02:52,340 Ja siis tõlgi või arvuti järgmiselt neid ükshaaval. 51 00:02:52,340 --> 00:02:56,630 See on nõrgalt kirjutatud, on no tüübist deklaratsioonid R. 52 00:02:56,630 --> 00:02:59,130 >> Ja siis read Erinevatele 53 00:02:59,130 --> 00:03:03,920 on natuke rohkem lahti, kui need on C, näiteks. 54 00:03:03,920 --> 00:03:06,450 Ja nagu ma ütlesin on väga ulatuslikud vahendid 55 00:03:06,450 --> 00:03:15,610 koostada graafikuid, statistika analüüs, andmete hankimiseks. 56 00:03:15,610 --> 00:03:19,540 Need on nii ehitatud keel ja nagu video ütles, 57 00:03:19,540 --> 00:03:23,680 tuhandeid kolmanda osapoole teeke, saate alla laadida ja kasutada tasuta 58 00:03:23,680 --> 00:03:25,340 väga lahtine litsentsi tingimused. 59 00:03:25,340 --> 00:03:28,800 60 00:03:28,800 --> 00:03:31,500 >> Nii üldiselt salli et te vaatate neid kahte raamatut 61 00:03:31,500 --> 00:03:34,610 kui sa lähed tööle R. Üks neist on ametlik R algaja 62 00:03:34,610 --> 00:03:35,110 suunata. 63 00:03:35,110 --> 00:03:38,660 See haldab core arendajad R. 64 00:03:38,660 --> 00:03:42,400 Võite alla laadida seda uuesti, tasuta tasu ja õiguslikult sel link seal. 65 00:03:42,400 --> 00:03:45,430 66 00:03:45,430 --> 00:03:49,869 Kõik need slaidid lähevad up internet, kohta CS50 kodulehel 67 00:03:49,869 --> 00:03:50,660 Pärast seda tehakse. 68 00:03:50,660 --> 00:03:53,690 Seega pole vaja kopeerida asju ette meeletult. 69 00:03:53,690 --> 00:03:56,800 >> Teine on õpik Cosma Shalizi, 70 00:03:56,800 --> 00:04:00,100 kes on statistika professor Carnegie Mellon, nimetatakse Täpsem andmed 71 00:04:00,100 --> 00:04:02,160 Analüüsitav Elementaarsed vaatepunktist. 72 00:04:02,160 --> 00:04:04,010 See ei ole peamiselt teadus- raamat. 73 00:04:04,010 --> 00:04:07,130 See on statistika raamat ja see on andmete analüüs raamatu. 74 00:04:07,130 --> 00:04:11,990 Aga see on väga kättesaadav inimestele, kes on natuke statistikat teadmisi. 75 00:04:11,990 --> 00:04:13,750 >> Ma ei ole kunagi teinud vastava kursuse. 76 00:04:13,750 --> 00:04:17,269 Ma lihtsalt tean, killud erinevatest seotud teadused 77 00:04:17,269 --> 00:04:18,579 et olen võtnud kursusi. 78 00:04:18,579 --> 00:04:21,839 Ja ma ei suutnud aru saada see väga hästi. 79 00:04:21,839 --> 00:04:25,630 >> Kõik arvud on esitatud R. Nad on tehtud R 80 00:04:25,630 --> 00:04:30,280 ja neil on ka kood nimekirjad allpool iga näitaja, mis ütleb teile, 81 00:04:30,280 --> 00:04:33,270 kuidas te teete iga number R-kood. 82 00:04:33,270 --> 00:04:37,400 Ja see on väga kasulik, kui üritad jäljendada 83 00:04:37,400 --> 00:04:38,650 mõned joonisel näete raamatut. 84 00:04:38,650 --> 00:04:47,840 >> Ja taas tasuta lae alla stat.cmu.edu/cshalizi/ Vabandame, 85 00:04:47,840 --> 00:04:50,230 et tuleks kärpida tilde cshalizi. 86 00:04:50,230 --> 00:04:53,150 Ma teen kindlasti parandada, et kui ametnik slaidid tõusevad. 87 00:04:53,150 --> 00:04:57,000 / ADAfaEPoV mis on alles akronüüm raamatu pealkiri. 88 00:04:57,000 --> 00:04:59,850 89 00:04:59,850 --> 00:05:02,500 >> Nii üldine caveats-- R on palju võimalusi. 90 00:05:02,500 --> 00:05:05,331 Ma olen ainult kavatse olla võimalik katta pinnale palju asju. 91 00:05:05,331 --> 00:05:08,580 Ka esimene osa seminar saab olema midagi andmed prügimäele. 92 00:05:08,580 --> 00:05:11,437 Ma olen üsna kahju. 93 00:05:11,437 --> 00:05:13,770 Põhimõtteliselt ma lähen tutvustada teile palju asju 94 00:05:13,770 --> 00:05:15,350 õigus ära nahkhiir, läheb nii kiiresti kui võimalik. 95 00:05:15,350 --> 00:05:17,058 Ja siis me saame lõbus osa, mis on 96 00:05:17,058 --> 00:05:20,570 demo, kus ma näitan sulle kõike et oleme rääkinud ekraanil. 97 00:05:20,570 --> 00:05:23,321 Ja saate mängida oma. 98 00:05:23,321 --> 00:05:26,070 Nii et see saab olema palju tehniline kraam visatakse üles siin. 99 00:05:26,070 --> 00:05:28,060 Ära muretse, kopeerides kõik, et maha. 100 00:05:28,060 --> 00:05:31,740 Kuna A, saad kõik kraami CS50 veebilehel hiljem. 101 00:05:31,740 --> 00:05:37,780 Ja B, see ei ole tegelikult nii väga oluline meelde seda alates slaidid. 102 00:05:37,780 --> 00:05:40,462 See on veelgi olulisem, et sa saad mõned intuitiivne rajatis sellega 103 00:05:40,462 --> 00:05:44,220 ja mis pärineb lihtsalt mängides. 104 00:05:44,220 --> 00:05:45,720 >> Miks kasutada R? 105 00:05:45,720 --> 00:05:49,440 Põhimõtteliselt, kui teil on projekt, mis hõlmab kaevandamine suured andmekogud, andmeid 106 00:05:49,440 --> 00:05:52,664 visualiseerimine, sa peaks kasutama R. Kui oled 107 00:05:52,664 --> 00:05:55,830 teeb keeruliseks statistilist analüüsi, et oleks raske Excel, 108 00:05:55,830 --> 00:05:58,010 Näiteks, oleks Samuti good-- ka 109 00:05:58,010 --> 00:06:00,506 kui sa teed statistika analüüsi, mis on automatiseeritud. 110 00:06:00,506 --> 00:06:02,130 Oletame, et sa oled säilitades kodulehel. 111 00:06:02,130 --> 00:06:06,320 Ja sa tahad lugeda server log iga päev ja koostada mõned nimekirja, 112 00:06:06,320 --> 00:06:10,320 nagu top riikides, kasutajad tulevad, 113 00:06:10,320 --> 00:06:15,100 mõned kokkuvõte statistikat, kui kaua nad kulutavad oma veebilehel või mis iganes. 114 00:06:15,100 --> 00:06:16,910 Ja sa soovid käivitada iga päev. 115 00:06:16,910 --> 00:06:20,280 >> Nüüd, kui sa teed seda Excel, sa pead minema oma server log, 116 00:06:20,280 --> 00:06:23,490 importida, et arvesse Excel andmed tabelisse, 117 00:06:23,490 --> 00:06:24,910 käivitatakse kõik analüüs käsitsi. 118 00:06:24,910 --> 00:06:27,100 R, võid lihtsalt kirjutada üks skript. 119 00:06:27,100 --> 00:06:29,520 Kavandada selle iga päev oma operatsioonisüsteemi. 120 00:06:29,520 --> 00:06:33,657 Ja siis igal õhtul kell 02:00, või kui sa kavandada selle, 121 00:06:33,657 --> 00:06:35,990 näebki läbi Interneti liiklus samal päeval. 122 00:06:35,990 --> 00:06:39,010 Ja siis järgmisel päeval, saate on see läikiv, uus aruanne 123 00:06:39,010 --> 00:06:41,710 või mis iganes koos kõigi teavet, mida küsitakse. 124 00:06:41,710 --> 00:06:44,960 125 00:06:44,960 --> 00:06:50,217 >> Ühesõnaga R on Cisco programmeerimine versus Cisco analüüsi. 126 00:06:50,217 --> 00:06:51,050 Esialgsed tehakse. 127 00:06:51,050 --> 00:06:53,104 Lähme reaalses asju. 128 00:06:53,104 --> 00:06:55,020 Nii on kolm reaalne tüüpi keeles. 129 00:06:55,020 --> 00:06:56,120 Seal on arvuline. 130 00:06:56,120 --> 00:07:01,250 Seal on mingi vahe täisarvud ja ujuva punkti, 131 00:07:01,250 --> 00:07:02,769 kuid tegelikult mitte. 132 00:07:02,769 --> 00:07:04,560 Seal on märk kirjuta, mis on stringid. 133 00:07:04,560 --> 00:07:07,100 Ja seal on loogiline kirjuta, mis on tõeväärtused. 134 00:07:07,100 --> 00:07:11,080 >> Ja saate teisendada vahel tüüpi Kasutades neid funktsioone numbriline, 135 00:07:11,080 --> 00:07:15,220 kui märk, nagu loogiline. 136 00:07:15,220 --> 00:07:17,510 Kui te helistate, näiteks Numbrilised string, 137 00:07:17,510 --> 00:07:20,030 siis püüab ta lugeda, et string numbrina, samamoodi 138 00:07:20,030 --> 00:07:25,897 et A2I ja scanf teha, ja C. Kui helistate kui numbriline kohta on õige või vale 139 00:07:25,897 --> 00:07:26,980 see muunduda 1 või 0. 140 00:07:26,980 --> 00:07:29,110 Kui te helistate kui tegelane midagi siis see 141 00:07:29,110 --> 00:07:32,550 teisendada seda arvesse string esindus. 142 00:07:32,550 --> 00:07:34,990 >> Ja siis on vektorid ja maatriksid. 143 00:07:34,990 --> 00:07:37,580 Nii vektorid on põhimõtteliselt 1 ühedimensionaalne. 144 00:07:37,580 --> 00:07:40,600 Nad on, mida me nimetame massiivid C. maatriksid 2 mõõtmeline massiivid. 145 00:07:40,600 --> 00:07:42,350 Ja siis suurem ühedimensionaalne saate 146 00:07:42,350 --> 00:07:48,560 on 3, 4, 5 mõõtmed või mis iganes numbriliste väärtustega, stringid, 147 00:07:48,560 --> 00:07:52,860 loogilise väärtusi. 148 00:07:52,860 --> 00:07:55,380 >> Sul on ka nimekirjad, mis on mingi assotsiatiivne massiiv. 149 00:07:55,380 --> 00:07:57,390 Ma saan sinna natuke. 150 00:07:57,390 --> 00:07:59,390 Nii et üks oluline asi et väljasõidud inimesi üles R 151 00:07:59,390 --> 00:08:01,470 on see, et puuduvad tõeline, puhas aatomi tüübid. 152 00:08:01,470 --> 00:08:05,870 Ei ole tegelikku vahet Numbri nagu arvväärtus, 153 00:08:05,870 --> 00:08:07,920 ja loetelu arvväärtused. 154 00:08:07,920 --> 00:08:12,370 Numbrilised väärtused on tegelikult sama vektorid pikkusega 1. 155 00:08:12,370 --> 00:08:14,959 Ja see on mitmeid olulist mõju. 156 00:08:14,959 --> 00:08:17,500 Üks, see tähendab, et sa saad teha asjad väga lihtsalt, et kaasata 157 00:08:17,500 --> 00:08:21,037 nagu lisades numbri vektor. 158 00:08:21,037 --> 00:08:23,120 R hakkab põhimõtteliselt arv mida mõtled selle. 159 00:08:23,120 --> 00:08:24,610 Ja ma saan, et teises. 160 00:08:24,610 --> 00:08:27,930 See tähendab ka, et ei ole nii, tüübi checker-- ulatuses, 161 00:08:27,930 --> 00:08:30,530 et midagi sellist eksisteerib R-- öelda 162 00:08:30,530 --> 00:08:33,780 Kui olete möödunud aastal ühe väärtuse kui ta loodab massiivi või vastupidi. 163 00:08:33,780 --> 00:08:39,159 Ja see võib põhjustada mõned kummalised mured, et ma jooksin kui 164 00:08:39,159 --> 00:08:42,252 Olin kasutades R ajal minu suveks tööd. 165 00:08:42,252 --> 00:08:43,710 Ja ei ole segatud tüüpi massiivid. 166 00:08:43,710 --> 00:08:46,543 Nii et sa ei pea massiivi olid Esimene elemendid on, ma ei tea, 167 00:08:46,543 --> 00:08:49,332 string "John" ja Teine element on number 42. 168 00:08:49,332 --> 00:08:52,540 Kui püüad seda teha, siis saad kõik lihtsalt teisendada stringi. 169 00:08:52,540 --> 00:08:54,760 Nii et meil on string John, string 42. 170 00:08:54,760 --> 00:08:58,250 171 00:08:58,250 --> 00:09:02,025 >> Nii ebatavaline süntaktilise features-- kõige R süntaks on väga sarnane C. 172 00:09:02,025 --> 00:09:04,690 Seal on mõned olulised erinevused. 173 00:09:04,690 --> 00:09:05,620 Kirjutades on väga nõrk. 174 00:09:05,620 --> 00:09:07,360 Nii ei ole muutuja deklaratsioonid. 175 00:09:07,360 --> 00:09:12,670 Ülesanne kasutab kummaline viga operaator vähem kui sidekriipsuga. 176 00:09:12,670 --> 00:09:15,340 Kommentaarid on koos räsi märk. 177 00:09:15,340 --> 00:09:19,230 Ma arvan, et tänapäeval me nimetame seda hashtag kuigi see ei ole tegelikult accurate-- ole 178 00:09:19,230 --> 00:09:21,810 topelt kaldkriipsuga. 179 00:09:21,810 --> 00:09:24,710 >> Modular jäägid on koos %% märke. 180 00:09:24,710 --> 00:09:30,172 Integer jaotus on koos% /%, mis on väga raske lugeda, kui ta on prognoositud 181 00:09:30,172 --> 00:09:30,880 kuni ekraanile. 182 00:09:30,880 --> 00:09:34,150 183 00:09:34,150 --> 00:09:37,200 Saad valikuid täisarvud jämesooles. 184 00:09:37,200 --> 00:09:41,840 Nii 2,5 teile vektori Kõigi numbrid 2 kuni 5. 185 00:09:41,840 --> 00:09:44,530 >> Massiivid on üks indekseeritud, mis kruvidega palju inimesi 186 00:09:44,530 --> 00:09:47,540 up, kui nad rohkem Tüüpiline programmeerimiskeeli, 187 00:09:47,540 --> 00:09:50,450 nagu C, kus enamik asjad on null-indekseeritud. 188 00:09:50,450 --> 00:09:54,420 Jällegi, see on koht, kus R pärandi keele jaoks, nagu ei 189 00:09:54,420 --> 00:09:56,560 professionaalse programmeerijad on saadaval. 190 00:09:56,560 --> 00:09:59,680 Kui oled sotsioloog või majandusteadlane või midagi 191 00:09:59,680 --> 00:10:01,980 ja sa üritad kasutada R põhimõtteliselt lisandina 192 00:10:01,980 --> 00:10:03,832 Teie tähtsam erialase töö, 193 00:10:03,832 --> 00:10:06,040 sa lähed leida ühe indekseerimise natuke loomulikumaks. 194 00:10:06,040 --> 00:10:09,890 Sest sa hakka lugema 1 igapäevaelus, mitte 0. 195 00:10:09,890 --> 00:10:13,260 >> For-silmuseid, mis sarnaneb foreach ehitada PHP, 196 00:10:13,260 --> 00:10:17,090 mis sa saad õppida in-- üsna varsti. 197 00:10:17,090 --> 00:10:22,540 Milline on väärtus vektor ja siis võid teha asju väärtust. 198 00:10:22,540 --> 00:10:24,040 Sihtrühm: See on tulla loeng. 199 00:10:24,040 --> 00:10:26,248 CONNOR HARRIS: Oh, see on tulla loeng, väga hea. 200 00:10:26,248 --> 00:10:29,815 Sihtrühm: Ülesanne, on see peaks meelde paremalt vasakule? 201 00:10:29,815 --> 00:10:31,440 CONNOR HARRIS: Paremalt vasakule, jah. 202 00:10:31,440 --> 00:10:34,720 Sa ei mõtle seda kui väärtus õigus lükata varieeruva 203 00:10:34,720 --> 00:10:36,240 vasakul. 204 00:10:36,240 --> 00:10:36,781 Sihtrühm: OK. 205 00:10:36,781 --> 00:10:39,770 206 00:10:39,770 --> 00:10:42,330 >> CONNOR HARRIS: Ja lõpuks funktsiooni süntaks on natuke imelik. 207 00:10:42,330 --> 00:10:48,460 Sul on funktsiooni nimi suva, määratud Selle märksõna funktsioon, millele järgneb 208 00:10:48,460 --> 00:10:51,530 kõik argumendid ja siis keha funktsiooni pärast seda. 209 00:10:51,530 --> 00:10:53,280 Jälle need asjad võivad tunduda natuke imelik. 210 00:10:53,280 --> 00:10:57,181 Nad läbiv pärast te töötate keelt natuke. 211 00:10:57,181 --> 00:10:58,930 Nii vektorid, kuidas sa vektori 212 00:10:58,930 --> 00:11:04,550 on kirjutad C, mis on märksõna, siis kõik numbrid soovite või stringid 213 00:11:04,550 --> 00:11:06,490 või mis iganes. 214 00:11:06,490 --> 00:11:07,995 Argumendid ka vektorid. 215 00:11:07,995 --> 00:11:09,620 Aga tulemuseks massiivi saab lapik. 216 00:11:09,620 --> 00:11:14,385 Nii et sa ei pea massiivid, kus mõned elemendid on ühe numbrid 217 00:11:14,385 --> 00:11:17,010 ja mõned elemendid on massiivid ise. 218 00:11:17,010 --> 00:11:20,010 >> Nii et kui sa püüad ehitada massiiv oli esimene element on 4 219 00:11:20,010 --> 00:11:22,370 ja teine ​​element on massiivi 3,5 teil 220 00:11:22,370 --> 00:11:25,890 lihtsalt saada kolm elementi massiivi, 4,3,5. 221 00:11:25,890 --> 00:11:27,760 Nad ei saa olla segatüüpi. 222 00:11:27,760 --> 00:11:32,290 Kui püüad lugeda ega kirjutada väljaspool piire vektorit 223 00:11:32,290 --> 00:11:36,640 saad seda väärtust nimetatakse PUUDUB A mis tähendab väärtuse puudumine. 224 00:11:36,640 --> 00:11:39,900 Ja see on mõeldud nagu statistikud, kes 225 00:11:39,900 --> 00:11:43,080 töötavad mittetäieliku andmekogud. 226 00:11:43,080 --> 00:11:46,460 >> Kui te rakendate funktsiooni, mis pidavat võtta vaid üks number massiivi 227 00:11:46,460 --> 00:11:49,220 siis mida sa saad, seda funktsioon kaardistab üle massiivi. 228 00:11:49,220 --> 00:11:52,130 Seega, kui teie ülesanne oletame võtab number ja naaseb see ruut. 229 00:11:52,130 --> 00:11:58,170 Sa kohaldada, et massiivi 2,3,5 Mida saad on massiivi 4,9,25. 230 00:11:58,170 --> 00:12:00,010 >> Ja see on väga kasulik sest see tähendab, et sa 231 00:12:00,010 --> 00:12:03,374 ei pea kirjutama silmuseid teeme väga lihtsad asjad nagu kohaldamisel 232 00:12:03,374 --> 00:12:05,040 Funktsiooni kõigile liikmetele andmehulga. 233 00:12:05,040 --> 00:12:08,557 Milline kui te töötate suur andmekogud, mida sa pead tegema palju. 234 00:12:08,557 --> 00:12:10,390 Binary funktsioonid rakendusuuringute kirje sissekandega. 235 00:12:10,390 --> 00:12:12,430 Ma saan sinna. 236 00:12:12,430 --> 00:12:16,750 Võite kasutada neid massiive või vektorite nurksulgudes. 237 00:12:16,750 --> 00:12:22,300 Seega vektor nimi nurksulgudes 1 annab sulle esimene osa. 238 00:12:22,300 --> 00:12:25,510 Vector nime nurksulgudes 2 annab teile teise element. 239 00:12:25,510 --> 00:12:27,530 >> Võite edastada vektor indeksite ja saate 240 00:12:27,530 --> 00:12:29,640 saada tagasi välja põhiliselt sub tegur. 241 00:12:29,640 --> 00:12:34,990 Nii saab teha vektor nimi sulgudes C, 2,4 ja sa saad välja vektor, mis sisaldab 242 00:12:34,990 --> 00:12:38,804 teisel ja neljandal elemendid massiivi. 243 00:12:38,804 --> 00:12:40,720 Ja kui sa tahad lihtsalt Kiire kokkuvõte statistika 244 00:12:40,720 --> 00:12:47,529 vektori nagu interquartile vahemikus, keskmine, maksimum, mida iganes, 245 00:12:47,529 --> 00:12:49,820 võid trükkida kokkuvõte vektor nimi ja saan selle välja. 246 00:12:49,820 --> 00:12:52,680 See ei ole tõesti kasulik programmeerimine, kuid kui sa mängid 247 00:12:52,680 --> 00:12:55,990 ümber andmekogud, see on mugav. 248 00:12:55,990 --> 00:12:58,650 >> Matrices-- põhimõtteliselt suurem mõõtmete massiivid. 249 00:12:58,650 --> 00:13:01,190 Neil on see eriline märke süntaks. 250 00:13:01,190 --> 00:13:07,620 Matrix array, mis saab täis in-- kahju, maatriksi andmed, 251 00:13:07,620 --> 00:13:09,780 ridade arv, veergude arvu. 252 00:13:09,780 --> 00:13:13,180 Kui teil on mõningaid andmeid, täidab ta massiivi põhimõtteliselt läheb ülevalt alla 253 00:13:13,180 --> 00:13:13,380 esimene. 254 00:13:13,380 --> 00:13:14,190 Siis vasakult paremale. 255 00:13:14,190 --> 00:13:15,030 Nii, nagu see. 256 00:13:15,030 --> 00:13:17,809 257 00:13:17,809 --> 00:13:19,600 Ja R on ehitatud maatriks korrutamise puhul 258 00:13:19,600 --> 00:13:24,310 spektraalne lagunemise diagonalization, palju asju. 259 00:13:24,310 --> 00:13:27,785 Kui soovid kõrgema mõõtmete massiivid, nii 3, 4, 5, 260 00:13:27,785 --> 00:13:29,410 või mis iganes mõõtmed saab teha. 261 00:13:29,410 --> 00:13:34,400 Süntaks on massiiv päevasõidutulede võrdub c, siis nimekirja mõõtmed. 262 00:13:34,400 --> 00:13:38,620 Nii et kui sa tahad 4 mõõtmeline massiiv mõõtmetega 4, 7, 8, 9, massiivi, 263 00:13:38,620 --> 00:13:45,470 päevasõidutulede võrdub c (4,7,8,9). 264 00:13:45,470 --> 00:13:51,180 >> Sa tutvuda ühe väärtused sulgudes Esimene sissekanne komaga teine ​​sissekanne. 265 00:13:51,180 --> 00:13:54,870 Saad kogu viilud Ridade või veergude. 266 00:13:54,870 --> 00:13:59,900 Selle puudulikud süntaks on lihtsalt rea number koma või komadega veerus 267 00:13:59,900 --> 00:14:00,400 number. 268 00:14:00,400 --> 00:14:02,874 269 00:14:02,874 --> 00:14:04,540 Nii nimekirjad on omamoodi seotud massiivi. 270 00:14:04,540 --> 00:14:06,360 Nad on oma süntaks siin. 271 00:14:06,360 --> 00:14:08,320 Jällegi ei meeletult kopeerida see kõik maha. 272 00:14:08,320 --> 00:14:11,370 See on lihtsalt nii, et inimesed läbimas slaidid hiljem 273 00:14:11,370 --> 00:14:13,089 on see kõik kena viide. 274 00:14:13,089 --> 00:14:16,130 Ja seda saab väga loomulik kord Ma tegelikult kõndida läbi demos. 275 00:14:16,130 --> 00:14:19,295 276 00:14:19,295 --> 00:14:20,920 Nii loetleb põhiliselt seotud massiivid. 277 00:14:20,920 --> 00:14:27,040 Te pääsete väärtused nimekiri nimi, dollari märk, võti. 278 00:14:27,040 --> 00:14:31,370 Seega, kui teie loend on nime suva, siis saate kasutada seda niimoodi. 279 00:14:31,370 --> 00:14:37,032 Saad kogu võtmeväärtuste paari mida läbides nurksulg indeks. 280 00:14:37,032 --> 00:14:39,240 Kui teil lugeda olematu võti, saate null. 281 00:14:39,240 --> 00:14:41,150 See ei ole viga. 282 00:14:41,150 --> 00:14:43,590 Asi on selles, R teen palju koos null kui võimalik. 283 00:14:43,590 --> 00:14:46,580 Ja see ei tähenda, et kui sa oled ei oodanud, et saada null välja 284 00:14:46,580 --> 00:14:51,840 Mõne nimekirja lugeda, saad mõned ettearvamatu vigu veelgi allapoole 285 00:14:51,840 --> 00:14:52,620 rida. 286 00:14:52,620 --> 00:14:54,890 >> See juhtus minuga minu suveks tööd, kui olin kasutades R 287 00:14:54,890 --> 00:14:58,410 kus ma muutunud, kuidas teatud Nimekiri on määratletud ühe koha 288 00:14:58,410 --> 00:15:05,410 kuid ei muutu hiljem kood, mis lugeda väärtusi ta. 289 00:15:05,410 --> 00:15:10,190 Ja mis siis juhtus oli olin lugedes null väärtused sellest nimekirjast, 290 00:15:10,190 --> 00:15:13,090 möödaminnes neid funktsioone, ja olles väga segaduses 291 00:15:13,090 --> 00:15:16,000 kui ma sain igasuguseid juhuslik infinities koristuse üles 292 00:15:16,000 --> 00:15:16,790 Selles funktsioonis. 293 00:15:16,790 --> 00:15:20,730 Sest kui te rakendate teatud maksimaalse või minimaalselt funktsioonid tühjaks, 294 00:15:20,730 --> 00:15:22,570 saad lõpmatu väärtused välja. 295 00:15:22,570 --> 00:15:26,400 296 00:15:26,400 --> 00:15:29,180 >> Andmed raamid, nad alamklass nimekirja. 297 00:15:29,180 --> 00:15:31,170 Iga väärtus on vektor ühepikkused. 298 00:15:31,170 --> 00:15:34,220 Ja nad esitamiseks kasutatakse, Põhimõtteliselt tabelid. 299 00:15:34,220 --> 00:15:36,175 Seal on see initsialiseerimise süntaks. 300 00:15:36,175 --> 00:15:38,800 Seda kõike jällegi olla palju selgem, kui sa saad demo. 301 00:15:38,800 --> 00:15:42,240 302 00:15:42,240 --> 00:15:44,240 Ja kena asi andmed raamid on see, et sa 303 00:15:44,240 --> 00:15:49,380 võib anda nimed kõik veerud ja nimed kõigile read. 304 00:15:49,380 --> 00:15:53,890 Ja nii, et muudab juurdepääsu neid natuke sõbralikumaks. 305 00:15:53,890 --> 00:15:59,130 Ka see, kuidas enamik funktsioone, mis lugeda andmeid Exceli 306 00:15:59,130 --> 00:16:03,820 või tekstifaile, näiteks loeb oma andmed. 307 00:16:03,820 --> 00:16:07,555 Nad pane see mingisugune andmed raami. 308 00:16:07,555 --> 00:16:09,680 Nii functions-- funktsioonid süntaks on natuke imelik. 309 00:16:09,680 --> 00:16:16,160 Jällegi see on funktsiooni nimi, määrata, seda märksõna funktsioon ja seejärel 310 00:16:16,160 --> 00:16:17,900 argumentide loetelus. 311 00:16:17,900 --> 00:16:24,080 Nii on mõned toredaid asju kuidas funktsioonid töötavad siin. 312 00:16:24,080 --> 00:16:28,170 Ühe, saab tegelikult määrata vaikeväärtuste teatud argumendid. 313 00:16:28,170 --> 00:16:32,910 Nii saab öelda, R1 equals-- võib öelda suva 314 00:16:32,910 --> 00:16:38,290 on funktsioon, kus R1 võrdub midagi vaikimisi, kui kasutaja täpsustab 315 00:16:38,290 --> 00:16:39,090 ühtegi argumenti. 316 00:16:39,090 --> 00:16:41,932 Muidu see iganes ta panna. 317 00:16:41,932 --> 00:16:44,140 Ja see on väga mugav sest paljud meie funktsioonid 318 00:16:44,140 --> 00:16:47,910 on sageli kümneid või sadu argumente. 319 00:16:47,910 --> 00:16:51,210 Näiteks need, joonistamiseks graafikud või kandes hajuvusdiagrammide 320 00:16:51,210 --> 00:16:54,430 on argumendid, mis kontrollivad kõike pealkiri ja telje 321 00:16:54,430 --> 00:16:59,512 sildid värvi Regressioonijooned. 322 00:16:59,512 --> 00:17:01,470 Ja kui sa ei taha selleks, et inimesed täpsustada 323 00:17:01,470 --> 00:17:04,050 iga üks neist sadu argumendid 324 00:17:04,050 --> 00:17:07,674 kontrolli iga aspekti krundi või regressioon või mis iganes, 325 00:17:07,674 --> 00:17:09,299 see on tore, et on need vaikeväärtused. 326 00:17:09,299 --> 00:17:12,700 327 00:17:12,700 --> 00:17:19,146 >> Ja siis saate tegelikult kirjutada kui nägid siia tagasi. 328 00:17:19,146 --> 00:17:22,869 Või leida paremat näidet. 329 00:17:22,869 --> 00:17:28,690 Kui te helistate funktsiooni saate tegelikult kutsuda neid kasutades argument nimed. 330 00:17:28,690 --> 00:17:33,919 Nii et siin on näide maatriks ehitaja. 331 00:17:33,919 --> 00:17:34,960 See võtab kolm argumenti. 332 00:17:34,960 --> 00:17:36,760 Tavaliselt on andmeid, mis on vektor. 333 00:17:36,760 --> 00:17:38,920 Sul on N rida, mis on ridade arv. 334 00:17:38,920 --> 00:17:41,160 Sul on N cols-- veergude arvu. 335 00:17:41,160 --> 00:17:43,920 Asi on selles, kui sa kirjutad N eraldi real iganes 336 00:17:43,920 --> 00:17:46,520 ja N col võrdub iganes, kui olete helistaja seda funktsiooni, 337 00:17:46,520 --> 00:17:47,770 saab tegelikult vastupidine neid. 338 00:17:47,770 --> 00:17:51,590 Nii saab asetada N col esimene ja N rida teine ​​ja see teeb mingit vahet. 339 00:17:51,590 --> 00:17:54,660 Nii et see kena väike funktsioon. 340 00:17:54,660 --> 00:17:56,260 >> Kas importi ja eksporti. 341 00:17:56,260 --> 00:18:00,010 Seda saab teha, põhimõtteliselt. 342 00:18:00,010 --> 00:18:03,816 On ka võimalus kirjutada välja suvaline R vastuväiteid binaarkoodiks 343 00:18:03,816 --> 00:18:05,190 ja siis loe neid tagasi hiljem. 344 00:18:05,190 --> 00:18:08,030 Milline on mugav, kui sa teed suur interaktiivne istungil R 345 00:18:08,030 --> 00:18:12,850 ja sa pead päästa asju väga kiiresti. 346 00:18:12,850 --> 00:18:16,460 Vaikimisi R on Töökataloogi et faile saada kirjalik viidud 347 00:18:16,460 --> 00:18:19,410 ja loe tagasi saadud. 348 00:18:19,410 --> 00:18:22,350 Te näete, et koos getwg, muuta seda setdw. 349 00:18:22,350 --> 00:18:25,630 Midagi eriti huvitav siin 350 00:18:25,630 --> 00:18:28,270 >> Nüüd tegelik statistika stuff-- multilinear regressiooni. 351 00:18:28,270 --> 00:18:30,960 352 00:18:30,960 --> 00:18:34,910 Nii tavaline süntaksi on natuke keeruline. 353 00:18:34,910 --> 00:18:37,260 Mudel on suur objekt põhimõtteliselt. 354 00:18:37,260 --> 00:18:39,910 Läheb määratud LM, mis on funktsioon kõne. 355 00:18:39,910 --> 00:18:43,840 Esimene element, y tilde x1 pluss iganes. 356 00:18:43,840 --> 00:18:46,574 357 00:18:46,574 --> 00:18:47,990 Minu süntaks siin on natuke segane. 358 00:18:47,990 --> 00:18:49,490 Ma olen üsna kahju, seda on standardne viis 359 00:18:49,490 --> 00:18:50,990 et infotehnoloogia raamatuid teha. 360 00:18:50,990 --> 00:18:54,890 Aga see on natuke imelik. 361 00:18:54,890 --> 00:18:58,200 >> Ühesõnaga, see on lm Sulgudes esimene kirje 362 00:18:58,200 --> 00:19:06,730 on variable-- kahju, sõltub muutuja tilde x1 pluss x2 pluss 363 00:19:06,730 --> 00:19:10,910 Kuid paljud sõltumatu muutujad pead. 364 00:19:10,910 --> 00:19:14,240 Ja siis need võivad olla kas vektorid, kes kõik ühepikkused. 365 00:19:14,240 --> 00:19:16,220 Või nad võivad olla veerus päised andmete raami 366 00:19:16,220 --> 00:19:18,553 et sa lihtsalt täpsustada Teine argument andmed raami. 367 00:19:18,553 --> 00:19:23,270 368 00:19:23,270 --> 00:19:26,380 >> Samuti saab määrata keerukama valemiga 369 00:19:26,380 --> 00:19:31,990 nii et sa ei pea lineaarselt regress ühe muutuja, 370 00:19:31,990 --> 00:19:34,440 või ühe vektori varasemal vektor. 371 00:19:34,440 --> 00:19:38,070 Seda saab teha, näiteks vektorkomponent y ruudus pluss 1 372 00:19:38,070 --> 00:19:42,100 ja taanduda, et vastu Logi mõne teise vektori. 373 00:19:42,100 --> 00:19:45,200 Saate printida kokkuvõtted mudel selle käsu nimeks 374 00:19:45,200 --> 00:19:48,607 summary-- lihtsalt kokkuvõte parens mudel. 375 00:19:48,607 --> 00:19:50,190 Jälle midagi muud ma peaks selgitama. 376 00:19:50,190 --> 00:19:55,407 377 00:19:55,407 --> 00:19:58,615 Midagi muud, mis saavad parandatud kui slaidid tõusevad internetis. 378 00:19:58,615 --> 00:20:01,127 379 00:20:01,127 --> 00:20:03,210 Kui tahad lihtsalt arvutada lihtne seos 380 00:20:03,210 --> 00:20:09,170 saate korrelatsioon vektor 1 vektor 2 funktsiooni tuum. 381 00:20:09,170 --> 00:20:11,856 Meetod on vaikimisi Pearson korrelatsioonid. 382 00:20:11,856 --> 00:20:13,480 Need on standard ones saate teha. 383 00:20:13,480 --> 00:20:15,990 Samuti Spearman ja Kendell korrelatsioonid 384 00:20:15,990 --> 00:20:19,530 mis on mõned erinevad paremusjärjestus korrelatsioon. 385 00:20:19,530 --> 00:20:23,600 Noh nad ei arvuta toode hetked vahel vektorite endi 386 00:20:23,600 --> 00:20:28,511 kuid vektori Koht tellimusi. 387 00:20:28,511 --> 00:20:29,510 Ma seletan hiljem. 388 00:20:29,510 --> 00:20:30,120 >> Sihtrühm: Kiire küsimus 389 00:20:30,120 --> 00:20:30,360 >> CONNER HARRIS: Muidugi. 390 00:20:30,360 --> 00:20:33,151 >> Sihtrühm: Nii et kui sa arvutamisel sel lihtsal korrelatsioonid teha 391 00:20:33,151 --> 00:20:37,655 sa eeldada, et seal on statistilise tähtsust korrelatsioon? 392 00:20:37,655 --> 00:20:39,030 CONNER HARRIS: Sa ei pea. 393 00:20:39,030 --> 00:20:41,840 394 00:20:41,840 --> 00:20:43,960 Lm on põhimõtteliselt lihtsalt masin. 395 00:20:43,960 --> 00:20:47,690 See võtab kaks asja ja see sülitama 396 00:20:47,690 --> 00:20:49,770 koefitsiendid kõige sobivam liin. 397 00:20:49,770 --> 00:20:52,310 Samuti teatab standard vead need koefitsiendid. 398 00:20:52,310 --> 00:20:55,865 Ja ta ütleb teile, nagu on lõikaja statistiliselt oluline 399 00:20:55,865 --> 00:20:56,740 või erinevuse 0. 400 00:20:56,740 --> 00:20:59,400 Kas Tõus fit line statistiliselt 401 00:20:59,400 --> 00:21:01,510 nullist erinev, jne. 402 00:21:01,510 --> 00:21:06,260 Nii et see eeldab midagi, ma arvan Kõige parem vastus teie küsimusele. 403 00:21:06,260 --> 00:21:07,410 OKEI. 404 00:21:07,410 --> 00:21:14,650 >> Plotting-- nii peamine põhjus, miks sa peaksid kasuta R, nagu multilinear regressiooni. 405 00:21:14,650 --> 00:21:17,320 Põhimõtteliselt iga keel on mõned rajatis eest. 406 00:21:17,320 --> 00:21:21,365 Ja ausalt Ri süntaks regressiooni on natuke kauge. 407 00:21:21,365 --> 00:21:22,990 Aga joonestamist on koht, kus ta tegelikult paistab. 408 00:21:22,990 --> 00:21:28,090 >> Tööhobune funktsioon on maatükk ja see võtab kaks vektorit, x ja y. 409 00:21:28,090 --> 00:21:33,010 Ja siis ellipsid seisab väga Suur hulk vabatahtlik argumente, et 410 00:21:33,010 --> 00:21:39,190 kontrollida kõike alates pealkirjad värvid erinevate joonte või erinevates punktides, 411 00:21:39,190 --> 00:21:40,200 et krunt. 412 00:21:40,200 --> 00:21:42,250 Sul võib olla hajumine kruntide või line krundid. 413 00:21:42,250 --> 00:21:47,900 414 00:21:47,900 --> 00:21:49,710 >> [Kuuldamatu] 2 vektorid ühepikkused. 415 00:21:49,710 --> 00:21:53,780 Võite eelnema seda kinnitada andmed raami oma script. 416 00:21:53,780 --> 00:22:01,220 Ja see laseb sul lihtsalt kasutada veerg päised asemel eraldi vektorid. 417 00:22:01,220 --> 00:22:05,410 Saate lisada kõige sobivamad jooned ja kohaliku regressiooni kõverad oma graafikut. 418 00:22:05,410 --> 00:22:09,390 >> Need käsud loetletud Siin ab line ja liinid, 419 00:22:09,390 --> 00:22:11,640 Vaikimisi neid saada kirjutatud pop up aknad 420 00:22:11,640 --> 00:22:15,560 sest see eeldab, et te kasutate R interaktiivselt. 421 00:22:15,560 --> 00:22:17,310 Kui sa ei ole võimalik kirjuta kaks faile 422 00:22:17,310 --> 00:22:21,600 on tõesti igas formaadis soovid. 423 00:22:21,600 --> 00:22:25,410 Sorry, mul kirjaviga ma lihtsalt aru. 424 00:22:25,410 --> 00:22:30,887 425 00:22:30,887 --> 00:22:32,720 Kui soovite avada teise graafilise seadme 426 00:22:32,720 --> 00:22:39,200 saate seda funktsiooni nimetatakse PNG või JPEG või palju muid pildi formaate. 427 00:22:39,200 --> 00:22:42,319 Ja sa võid kirjutada graafikuid mis iganes faili nime täpsustada. 428 00:22:42,319 --> 00:22:45,110 Tühistamiseks, et sa pead use-- Ma ei kirjuta seda ka slide-- 429 00:22:45,110 --> 00:22:49,650 kuid seal on funktsioon nimega dev dot välja, et ei võta argumente. 430 00:22:49,650 --> 00:22:51,517 >> Siis on võimalus 3D joonestamist 431 00:22:51,517 --> 00:22:53,350 ja kontuuri joonistamiseks Kui sa tahad teha 432 00:22:53,350 --> 00:22:55,700 graafikud kahe sõltumatu muutuja. 433 00:22:55,700 --> 00:22:57,150 Ma ei hakka neid kohe. 434 00:22:57,150 --> 00:22:59,130 >> On ka mõned rajatised animatsioon 435 00:22:59,130 --> 00:23:01,300 Neil on tavaliselt säilitada kolmandate isikute poolt. 436 00:23:01,300 --> 00:23:06,330 Olen teinud animatsioone R graafikud, aga ma ei ole kasutanud nende kolmandale isikule 437 00:23:06,330 --> 00:23:06,940 raamatukogudes. 438 00:23:06,940 --> 00:23:09,929 Nii et ma ei saa tõesti tunnistust kuidas head nad on. 439 00:23:09,929 --> 00:23:12,220 Mida ma soovitan, kui soovite teha animatsioone kasutades R 440 00:23:12,220 --> 00:23:16,480 on sul võimalik kirjutada kõik raamide animatsioone 441 00:23:16,480 --> 00:23:18,470 ja siis saate kasutada kolmanda osapoole program-- 442 00:23:18,470 --> 00:23:23,630 Tüüpiline need on kutsutud FFmpeg või ImageMagick-- õmblema 443 00:23:23,630 --> 00:23:26,540 kõik oma kaadrit üheks animatsiooni. 444 00:23:26,540 --> 00:23:28,380 >> Nii aega demo. 445 00:23:28,380 --> 00:23:31,030 446 00:23:31,030 --> 00:23:37,189 Nii et kui te kasutate mõnda Unix nagu süsteemi mis on Linux BSD kuid kes kasutab BSD. 447 00:23:37,189 --> 00:23:39,730 OS X avada terminal window ja kirjuta R käsureale. 448 00:23:39,730 --> 00:23:42,820 Kui teil on R stuudio või jms, mis samuti toimib. 449 00:23:42,820 --> 00:23:46,270 Windowsi kasutajad peaksid olema võimalik leida R oma menüü Start. 450 00:23:46,270 --> 00:23:50,390 Tuleb kannab mingit nagu R x64 3 punkti mis iganes. 451 00:23:50,390 --> 00:23:53,110 Avage et seal. 452 00:23:53,110 --> 00:23:58,850 >> Nüüd lubage mul avada terminal window. 453 00:23:58,850 --> 00:24:02,562 Olgu, otsing. 454 00:24:02,562 --> 00:24:03,520 Sihtrühm: Command-Space 455 00:24:03,520 --> 00:24:06,675 CONNER HARRIS: Command-Space, aitäh. 456 00:24:06,675 --> 00:24:10,030 Ma tavaliselt ei kasuta Mac. 457 00:24:10,030 --> 00:24:13,310 Terminal, näitavad uues aknas. 458 00:24:13,310 --> 00:24:18,120 Uus aken on seaded põhi-, R. Seega sa peaksid 459 00:24:18,120 --> 00:24:22,230 tervitus, midagi sellist. 460 00:24:22,230 --> 00:24:31,060 >> Nii ma kasutan R interaktiivselt. 461 00:24:31,060 --> 00:24:32,719 Võite ka kirjutada R skriptid muidugi. 462 00:24:32,719 --> 00:24:34,510 Põhimõtteliselt skripte käivitada täpselt sama moodi nagu 463 00:24:34,510 --> 00:24:40,250 kui sa olid istub arvuti kirjutades iga rida üks korraga. 464 00:24:40,250 --> 00:24:42,660 Nii alustame tehes vektor. 465 00:24:42,660 --> 00:24:46,230 Noolega 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, kindlasti. 468 00:24:50,050 --> 00:24:51,630 Ma ei saa teha fondi suurus suurem. 469 00:24:51,630 --> 00:24:53,030 >> Sihtrühm: Command-Plus 470 00:24:53,030 --> 00:24:53,650 >> CONNER HARRIS: Command-Plus. 471 00:24:53,650 --> 00:24:54,191 Command-Plus. 472 00:24:54,191 --> 00:24:57,610 473 00:24:57,610 --> 00:25:00,370 Olgu, kuidas on? 474 00:25:00,370 --> 00:25:00,870 Hea? 475 00:25:00,870 --> 00:25:01,551 OKEI. 476 00:25:01,551 --> 00:25:03,300 Nii alustame kuulutab vektor nimekirja. 477 00:25:03,300 --> 00:25:08,710 Kas, nool, C 1,2,4. 478 00:25:08,710 --> 00:25:11,181 Me näeme. 479 00:25:11,181 --> 00:25:12,680 Ära muretse klambri seal. 480 00:25:12,680 --> 00:25:18,590 Sulgudes on nii et kui sa printida väga pikk massiivid, saame, kus sa oled. 481 00:25:18,590 --> 00:25:26,987 Üks näide oleks, kui ma lihtsalt tahan vahemikus 2-200. 482 00:25:26,987 --> 00:25:28,820 Kui ma trükitud väga pikk rida, sulgudes 483 00:25:28,820 --> 00:25:31,060 on lihtsalt nii et ma ei hoia jälgib, millised indeks 484 00:25:31,060 --> 00:25:33,250 Me oleme kui ma otsin läbi selle visuaalselt. 485 00:25:33,250 --> 00:25:36,570 486 00:25:36,570 --> 00:25:38,280 Nii igatahes, meil on. 487 00:25:38,280 --> 00:25:43,326 >> Nii et ma enne ütlesin, et massiivid suhelda väga kenasti, näiteks 488 00:25:43,326 --> 00:25:44,450 unaarse tegevuse niimoodi. 489 00:25:44,450 --> 00:25:46,500 Mis sa arvad, et ma tulen saada, kui ma kirjutada pluss 1? 490 00:25:46,500 --> 00:25:49,630 491 00:25:49,630 --> 00:25:51,140 Yep. 492 00:25:51,140 --> 00:25:54,250 Õigus, nüüd ma teen Selle erinevat valikut. 493 00:25:54,250 --> 00:26:01,650 Oletame, b c 20,40, 80. 494 00:26:01,650 --> 00:26:03,400 Nii et mida sa arvad see käsk teha? 495 00:26:03,400 --> 00:26:09,962 496 00:26:09,962 --> 00:26:10,670 Lisa elemente. 497 00:26:10,670 --> 00:26:14,950 Ja nii põhimõtteliselt see, mida ta teeb. 498 00:26:14,950 --> 00:26:16,740 Nii et see on päris mugav. 499 00:26:16,740 --> 00:26:23,800 Nii et ma kuidas ma seda teen. c on, oletame, 6 korda 1 kuni 10. 500 00:26:23,800 --> 00:26:26,789 501 00:26:26,789 --> 00:26:28,830 Niisiis, mida ma tahan näha sisaldas sa arvad? 502 00:26:28,830 --> 00:26:37,110 503 00:26:37,110 --> 00:26:38,110 Nii et kõik telli kuus. 504 00:26:38,110 --> 00:26:42,170 Nüüd, mida sa arvad juhtub, kui ma seda teen? 505 00:26:42,170 --> 00:26:48,090 Ma teen seda natuke selgem, c, c. 506 00:26:48,090 --> 00:26:50,365 Mis juhtub, sa arvan, et kui ma seda teen? 507 00:26:50,365 --> 00:26:51,488 pluss c. 508 00:26:51,488 --> 00:26:55,550 509 00:26:55,550 --> 00:26:56,050 [Kuuldamatu] 510 00:26:56,050 --> 00:26:58,552 511 00:26:58,552 --> 00:27:02,350 >> Sihtrühm: kas viga või see lihtsalt lisab esimesed kolm elementi. 512 00:27:02,350 --> 00:27:04,510 >> CONNER HARRIS: Mitte päris. 513 00:27:04,510 --> 00:27:05,522 See on see, mida me saime. 514 00:27:05,522 --> 00:27:08,910 Mis juhtub on lühem massiiv, a, sai ringlema. 515 00:27:08,910 --> 00:27:13,990 Nii saime 124, 124, 124. 516 00:27:13,990 --> 00:27:15,710 Jah. 517 00:27:15,710 --> 00:27:18,940 Ja põhimõtteliselt saab vaadata Selline käitumine enne, pluss 1, 518 00:27:18,940 --> 00:27:22,190 nagu alamklass selline käitumine, kus lühim massiiv on lihtsalt number 519 00:27:22,190 --> 00:27:25,410 1, mis on üks element massiivi. 520 00:27:25,410 --> 00:27:27,740 Ma lihtsalt öeldes vektor kõik aeg asemel massiiv, 521 00:27:27,740 --> 00:27:30,290 sest see on, mida r dokumentatsiooni tavaliselt teeb. 522 00:27:30,290 --> 00:27:33,070 See on juurdunud c harjumus. 523 00:27:33,070 --> 00:27:37,590 >> OK, ja nii nüüd on meil selle massiivi. 524 00:27:37,590 --> 00:27:38,830 Nii et meil on see massiiv, c. 525 00:27:38,830 --> 00:27:41,380 Saame kokkuvõte statistika c, kokkuvõte c. 526 00:27:41,380 --> 00:27:46,920 527 00:27:46,920 --> 00:27:48,280 Ja see on tore. 528 00:27:48,280 --> 00:27:51,070 529 00:27:51,070 --> 00:27:52,670 Nüüd teeme mõned maatriks asju. 530 00:27:52,670 --> 00:27:56,160 Oletame, et m on maatriks. 531 00:27:56,160 --> 00:27:57,780 Teeme seda kolm kolm ühe. 532 00:27:57,780 --> 00:28:01,630 Nii nrows võrdub 3 ja ncols võrdub 3. 533 00:28:01,630 --> 00:28:04,190 534 00:28:04,190 --> 00:28:10,710 Ja andmed olgem do-- mis siis Mis sa arvad, et see saab seda teha? 535 00:28:10,710 --> 00:28:15,310 536 00:28:15,310 --> 00:28:16,580 >> Õigus, see on järgmise üks. 537 00:28:16,580 --> 00:28:17,970 See on nrow ja ncolumn. 538 00:28:17,970 --> 00:28:22,164 539 00:28:22,164 --> 00:28:24,580 Mida ma olen teinud on ma olen kuulutas kolm kolm maatriksit 540 00:28:24,580 --> 00:28:26,950 ja ma olen möödus üheksa elementi massiivi. 541 00:28:26,950 --> 00:28:30,530 Nii logaritmi kõik elemente ühe läbi üheksa. 542 00:28:30,530 --> 00:28:33,400 543 00:28:33,400 --> 00:28:37,285 Ja kõik need väärtused täita üles array-- kahju? 544 00:28:37,285 --> 00:28:38,660 Sihtrühm: Need on aluseks 10 palke? 545 00:28:38,660 --> 00:28:41,284 CONNER HARRIS: No, samamoodi on naturaallogaritmi, et alus e. 546 00:28:41,284 --> 00:28:44,886 547 00:28:44,886 --> 00:28:47,010 Jah, kui sa tahad alus 10 log, ma arvan, et sa tahaks olla 548 00:28:47,010 --> 00:28:51,620 logida iganes, jagatud log 10. 549 00:28:51,620 --> 00:28:56,750 Ja nii andmetel [kuuldamatu] lihtsalt täitub massiiv, nii ülevalt alla, 550 00:28:56,750 --> 00:28:59,490 siis vasakult paremale. 551 00:28:59,490 --> 00:29:06,890 Ja kui sa tahad teha mõned teised massiiv, oletame, et n on maatriks. 552 00:29:06,890 --> 00:29:10,317 Teeme, ma ei tea, 2-13. 553 00:29:10,317 --> 00:29:11,900 Või ma teen midagi huvitavat. 554 00:29:11,900 --> 00:29:13,770 Ma teen 2 kuni 4. 555 00:29:13,770 --> 00:29:15,780 nrow võrdub oletame, 3. 556 00:29:15,780 --> 00:29:18,992 NcoI võrdub 4. 557 00:29:18,992 --> 00:29:20,360 n. 558 00:29:20,360 --> 00:29:22,090 Nii meil see. 559 00:29:22,090 --> 00:29:26,130 >> Ja nüüd, kui me tahame korrutada neid, me teeks n protsenti korda protsenti, 560 00:29:26,130 --> 00:29:27,680 sest see on n. 561 00:29:27,680 --> 00:29:30,234 562 00:29:30,234 --> 00:29:31,400 Ja meil on maatriks tooteid. 563 00:29:31,400 --> 00:29:33,970 564 00:29:33,970 --> 00:29:37,810 Autor nad Muide, kas te näete, kuidas kui ma deklareeritud n on 2 kuni 4 565 00:29:37,810 --> 00:29:43,570 vektor sai ringlema kuni see täis kõik n? 566 00:29:43,570 --> 00:29:45,710 Kui soovid võtta eigenvalue lagunemise 567 00:29:45,710 --> 00:29:46,960 see on midagi, mida me teha saame väga lihtsalt. 568 00:29:46,960 --> 00:29:47,709 Me ei saa teha eigen n. 569 00:29:47,709 --> 00:29:52,290 570 00:29:52,290 --> 00:29:54,600 Ja nii see on meie esimene kohtumine nimekirja. 571 00:29:54,600 --> 00:29:57,000 >> Nii eigen n on loetelu koos kaks võtit. 572 00:29:57,000 --> 00:29:58,430 Väärtused, mis on selle massiivi siin. 573 00:29:58,430 --> 00:30:01,030 Ja vektorid, mis on käesoleva massiivi siin. 574 00:30:01,030 --> 00:30:08,240 Nii et kui sa tahad, et eraldada, ütleme, seda kolmandas veerus 575 00:30:08,240 --> 00:30:13,080 alates eigenvectors maatriks, sest eigenvectors on veeru vektorid. 576 00:30:13,080 --> 00:30:24,400 Nii saame teha vec eigen n dollari märk vektorid, koma 3, on [kuuldamatu]. 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 Kas see, kui võiks eeldada. 580 00:30:34,100 --> 00:30:39,210 >> Siis ütle n korda protsenti korda vec. 581 00:30:39,210 --> 00:30:42,610 582 00:30:42,610 --> 00:30:48,320 Nii et tulemus siin kindlasti välja näeb kui võtsime kolmanda eigenvalue siin 583 00:30:48,320 --> 00:30:50,390 mis vastab Kolmanda omavektori. 584 00:30:50,390 --> 00:30:53,190 See lihtsalt korrutada kõik Selle omavektori, osa tark, 585 00:30:53,190 --> 00:30:53,990 poolt eigenvalue. 586 00:30:53,990 --> 00:30:57,760 Ja see, mida me ootame, sest see, mida eigenvalues ​​on. 587 00:30:57,760 --> 00:31:00,890 Kas keegi siin ei võetud Lineaaralgebra? 588 00:31:00,890 --> 00:31:02,530 Paar inimest, OK. 589 00:31:02,530 --> 00:31:04,030 Lihtsalt lülita oma ajud välja natuke. 590 00:31:04,030 --> 00:31:07,490 591 00:31:07,490 --> 00:31:20,720 Ja tõepoolest, kui me võtame eigen n dollari märk väärtused 3 korda vec, 592 00:31:20,720 --> 00:31:21,810 ka saada sama asi. 593 00:31:21,810 --> 00:31:24,726 See on vormindatud erinevalt järjest vektori asemel veeruvektoriga, 594 00:31:24,726 --> 00:31:25,640 kuid suur asi. 595 00:31:25,640 --> 00:31:29,430 596 00:31:29,430 --> 00:31:35,170 Ja nii need on põhimõtteliselt kena asju, mida me saame teha põhiaineid 597 00:31:35,170 --> 00:31:36,489 näidanud nimekirjad. 598 00:31:36,489 --> 00:31:39,030 Ma peaks näitama kena asju toimib hästi. 599 00:31:39,030 --> 00:31:41,750 >> Nii saab say-- [kuuldamatu] funktsioon, nimetame 600 00:31:41,750 --> 00:31:51,960 see funkts vastu funktsiooni n n ruudus tegelikult, see ei ole tõesti parim. 601 00:31:51,960 --> 00:31:55,632 a, b, a ruudus pluss b. 602 00:31:55,632 --> 00:31:58,547 603 00:31:58,547 --> 00:32:00,380 Nii et üks asi funktsioonid on jällegi nad 604 00:32:00,380 --> 00:32:01,963 ei pea selgesõnaline tagastamise avaldused. 605 00:32:01,963 --> 00:32:04,250 Nii saab lihtsalt-- Viimane väide hinnatud 606 00:32:04,250 --> 00:32:07,502 saab avalduse tagasi, või väärtuse tagasi. 607 00:32:07,502 --> 00:32:10,460 Nii et sel juhul me ainult hinnata üks väide, ruuduline plus b. 608 00:32:10,460 --> 00:32:12,043 See on vaikimisi tagastatav väärtus. 609 00:32:12,043 --> 00:32:14,530 See ei ole kunagi valus panna tagasi väärtusi selgesõnaliselt, 610 00:32:14,530 --> 00:32:16,880 eriti kui on tegemist suure funktsioon väga keeruline loogika 611 00:32:16,880 --> 00:32:17,380 voolata. 612 00:32:17,380 --> 00:32:18,450 Aga sa ei pea neid. 613 00:32:18,450 --> 00:32:24,890 Nüüd saame teha funkts 5, 1, ja see on põhimõtteliselt mida võid oodata. 614 00:32:24,890 --> 00:32:29,146 615 00:32:29,146 --> 00:32:31,270 Midagi muud me teha saame, saame tegelikult teha funkts b 616 00:32:31,270 --> 00:32:33,260 võrdub 1, a on võrdne 5. 617 00:32:33,260 --> 00:32:36,870 618 00:32:36,870 --> 00:32:40,770 Nii et kui me täpsustada number siin, mis argumendi, mille argument 619 00:32:40,770 --> 00:32:44,680 funktsioonis, saame flip ümber Nende väärtuste iganes me tahame. 620 00:32:44,680 --> 00:32:48,405 >> Sihtrühm: Kas põhjus kirjutada ta läbi b 621 00:32:48,405 --> 00:32:52,404 võrdub mitte ainult kasutades numbrid ning koma? 622 00:32:52,404 --> 00:32:54,820 CONNER HARRIS: Jah, tavaliselt seda teha, kui sul on funktsioonid 623 00:32:54,820 --> 00:32:58,540 palju argumente. 624 00:32:58,540 --> 00:33:00,690 See võib sageli olla nagu lipud, et soovite ainult 625 00:33:00,690 --> 00:33:03,130 soovite kasutada harvadel juhtudel. 626 00:33:03,130 --> 00:33:06,740 Ja sel moel saab ainult-- sa võib viidata konkreetsetele argumentidele 627 00:33:06,740 --> 00:33:09,110 mida soovite kasutada mitte-default väärtused, 628 00:33:09,110 --> 00:33:14,470 ja sa ei pea kirjutama välja hunnik lippe võrdub vale pärast neid. 629 00:33:14,470 --> 00:33:19,710 Või ma ei kirjuta seda jälle vaikeväärtus nagu b võrdub 2. 630 00:33:19,710 --> 00:33:26,289 Ja siis ma võiks teha f funkts, Ma teen 4, 1 seekord. 631 00:33:26,289 --> 00:33:28,580 Ja 17, mis on 4 ruuduline pluss 1, kui võiks eeldada. 632 00:33:28,580 --> 00:33:34,290 >> Aga ma võiks ka lihtsalt nimetame seda koos funkts 4, 633 00:33:34,290 --> 00:33:36,970 ja ma saan 18, sest Ma ei täpsusta b. 634 00:33:36,970 --> 00:33:38,550 Nii b saab vaikimisi väärtus 2. 635 00:33:38,550 --> 00:33:41,700 636 00:33:41,700 --> 00:33:47,200 >> OK, nii et nüüd, kui sa oled järgmiste koos demo, 637 00:33:47,200 --> 00:33:51,010 kirjuta seda joont teie käsutuses kiire ja vaata, mis kerkib. 638 00:33:51,010 --> 00:33:52,090 Tegelikult ei saa seda teha. 639 00:33:52,090 --> 00:33:52,590 Tüüp seda. 640 00:33:52,590 --> 00:33:57,780 641 00:33:57,780 --> 00:34:01,000 Sa peaksid midagi sellist. 642 00:34:01,000 --> 00:34:04,780 Nii mtcars on ehitatud andmeid määrata selle tutvustamise 643 00:34:04,780 --> 00:34:13,550 eesmärkidel, mis on with-- et tegemist in vaikimisi oma r jaotus. 644 00:34:13,550 --> 00:34:19,211 See on statistika koostamine 1974 küsimus Motor Trend ajakirja 645 00:34:19,211 --> 00:34:20,710 mitmete erinevate automudelite. 646 00:34:20,710 --> 00:34:28,270 >> Nii et miili galloni, cylinders-- Ma unustan, mida disp on-- hobujõudu. 647 00:34:28,270 --> 00:34:31,610 648 00:34:31,610 --> 00:34:32,420 Tõenäoliselt. 649 00:34:32,420 --> 00:34:36,920 Kui sa just Google MT autod, siis üks esimesi tulemusi 650 00:34:36,920 --> 00:34:38,730 arvestatakse alates ametlik r dokumentatsioon 651 00:34:38,730 --> 00:34:41,080 ja see selgitab kõik need andmeväljad. 652 00:34:41,080 --> 00:34:47,020 Nii kaalu on-- massi on auto kaal tonnides. 653 00:34:47,020 --> 00:34:48,880 Q s on veerand miil aega. 654 00:34:48,880 --> 00:34:52,409 655 00:34:52,409 --> 00:34:55,850 Nüüd saame teha mõned naljakad asjad umbes MT autod on andmed valdkonnas. 656 00:34:55,850 --> 00:35:01,640 >> Nii saame teha asju nagu rida nimesid, mt autod. 657 00:35:01,640 --> 00:35:05,490 Ja see on nimekiri kõigist rida sätestatud andmed, mis on nime autod. 658 00:35:05,490 --> 00:35:10,780 Me ei saa teha colnames, mt autod seda. 659 00:35:10,780 --> 00:35:15,500 Kui sa mt autod, sub-numbriline indeks, nagu 2. 660 00:35:15,500 --> 00:35:18,177 saame teise veergu välja Sellest mis oleks silindreid. 661 00:35:18,177 --> 00:35:19,370 >> Sihtrühm: Mida sa tegid? 662 00:35:19,370 --> 00:35:21,570 >> CONNER HARRIS: ma kirjutada MT autod, sulgudes e, 663 00:35:21,570 --> 00:35:24,180 mis andis mulle teise veerg välja mt autod. 664 00:35:24,180 --> 00:35:34,501 665 00:35:34,501 --> 00:35:38,110 Või kui me tahame järjest, ma ei kirjuta mtcars komaga 2, näiteks. 666 00:35:38,110 --> 00:35:41,850 667 00:35:41,850 --> 00:35:46,390 Muud ümmargune 2 koma niimoodi. 668 00:35:46,390 --> 00:35:48,880 Ja see läheb oma rida. 669 00:35:48,880 --> 00:35:54,680 See siin lihtsalt annab teile kolonn, kuid kolonni vektorina. 670 00:35:54,680 --> 00:36:04,634 671 00:36:04,634 --> 00:36:06,425 Ma mõistsin nüüd unustasin näidata 672 00:36:06,425 --> 00:36:09,150 mõned lahedad asju vektorid mida saate teha koos indeksitega. 673 00:36:09,150 --> 00:36:10,480 Nii et lubage mul seda teha kohe. 674 00:36:10,480 --> 00:36:17,130 Nii teeme c gets-- panna Selle kohta pause-- 2 korda 1 kuni 10. 675 00:36:17,130 --> 00:36:21,360 Nii c on lihtsalt saab olema vektor 2 kuni 20. 676 00:36:21,360 --> 00:36:24,640 Saan elemente nagu see, c2. 677 00:36:24,640 --> 00:36:30,942 Ma ei liigu vektori niimoodi, C- lase mind 678 00:36:30,942 --> 00:36:34,470 kasutada teise nime kui c, nagu vec c. 679 00:36:34,470 --> 00:36:37,591 680 00:36:37,591 --> 00:36:39,340 Põhimõtteliselt ma teen see, et sa ei saa 681 00:36:39,340 --> 00:36:45,010 segi vahel c kui vektori konstrueerimise funktsiooni, 682 00:36:45,010 --> 00:36:48,800 ja siis c muutuja nime. 683 00:36:48,800 --> 00:36:53,120 Vec sulgudes c 4, 5, 7. 684 00:36:53,120 --> 00:36:56,540 See saad mind neljas, viies, ja seitse elementi massiivi. 685 00:36:56,540 --> 00:37:01,740 Ma suudan vec, pane negatiivne indeks, nagu negatiivne 4. 686 00:37:01,740 --> 00:37:06,500 See saab mind seda neljas element eemaldada. 687 00:37:06,500 --> 00:37:10,140 Siis, kui ma tahtsin teha viiludeks, Ma suudan vec 2 kuni 6. 688 00:37:10,140 --> 00:37:15,480 2 koolon 6 on lihtsalt üks vektorit, mis on 2, 3, 4, 5, 6. 689 00:37:15,480 --> 00:37:18,230 Sülitab välja, et. 690 00:37:18,230 --> 00:37:20,770 >> Nii igatahes, tagasi mt autod. 691 00:37:20,770 --> 00:37:26,650 692 00:37:26,650 --> 00:37:28,450 Nii teeme mõned regressioon. 693 00:37:28,450 --> 00:37:34,240 Oletame, et mudel gets-- olgem lineaarselt regress-- ma ei tea. 694 00:37:34,240 --> 00:37:41,780 Esiteks teeme lisada mtcars, muidugi. 695 00:37:41,780 --> 00:37:44,870 696 00:37:44,870 --> 00:38:00,010 Nii [kuuldamatu] mudel lm, olgem taanduda miili galloni kohta tilde kaal. 697 00:38:00,010 --> 00:38:03,300 Ja siis andmed raam on mtcars. 698 00:38:03,300 --> 00:38:06,830 Nii kokkuvõte mudel. 699 00:38:06,830 --> 00:38:12,900 700 00:38:12,900 --> 00:38:15,595 >> OK, nii et see tundub natuke keeruline. 701 00:38:15,595 --> 00:38:19,380 Aga põhimõtteliselt, nähes, kui me proovida väljendada miili galloni 702 00:38:19,380 --> 00:38:23,970 lineaarse funktsiooni kaal siis saime selle liini siin 703 00:38:23,970 --> 00:38:28,730 mis intercepts kell 37,28. 704 00:38:28,730 --> 00:38:33,830 37,28 oleks teoreetiline miili galloni auto, mis kaalub null. 705 00:38:33,830 --> 00:38:41,210 Ja siis iga täiendava tonni, sa koputama umbes viie miili galloni 706 00:38:41,210 --> 00:38:42,440 ära selle. 707 00:38:42,440 --> 00:38:45,120 Mõlemad koefitsientide te näete, standard viga seal. 708 00:38:45,120 --> 00:38:47,870 Ja nad on väga statistiliselt olulised. 709 00:38:47,870 --> 00:38:55,740 >> Nii saame olla väga kindel, et 1 e 10 negatiivsele 10. 710 00:38:55,740 --> 00:38:59,510 Nii 1 korda midagi negatiivset 10, et kui te teete raskemad auto, 711 00:38:59,510 --> 00:39:01,440 see on hullem miili galloni. 712 00:39:01,440 --> 00:39:04,940 713 00:39:04,940 --> 00:39:07,250 Või saame testida mõne teise mudeli. 714 00:39:07,250 --> 00:39:09,230 Nagu asemel regresseeruvate seda kaalu, 715 00:39:09,230 --> 00:39:12,600 olgem regress seda samamoodi kaalu, sest äkki tegelik kaal 716 00:39:12,600 --> 00:39:15,690 läbisõit on kuidagi mitte lineaarne. 717 00:39:15,690 --> 00:39:18,540 >> See andis meile r ruudus 0,7528. 718 00:39:18,540 --> 00:39:19,610 Nii proovime seda. 719 00:39:19,610 --> 00:39:21,485 Seekord teeme täna erinevat muutujat, liiga. 720 00:39:21,485 --> 00:39:22,500 MODEL2. 721 00:39:22,500 --> 00:39:24,800 Nii kokkuvõte, MODEL2. 722 00:39:24,800 --> 00:39:28,200 723 00:39:28,200 --> 00:39:31,390 Olgu, nii jälle, me sai meie kõige sobivam joon siin. 724 00:39:31,390 --> 00:39:36,160 Ja see AEG_ see ütleb, põhimõtteliselt, et iga kord, kui 725 00:39:36,160 --> 00:39:38,090 osakaalu suurendamist auto teguriga e 726 00:39:38,090 --> 00:39:40,580 te kaotate seda mitu miili galloni. 727 00:39:40,580 --> 00:39:43,210 728 00:39:43,210 --> 00:39:50,326 >> Ja nii see aeg meie järelejäänud standard viga see-- et ei ole oluline, tõesti. 729 00:39:50,326 --> 00:39:53,540 Järelejäänud standard viga on põhimõtteliselt ainult standardviga 730 00:39:53,540 --> 00:39:57,760 et teil on jäänud pärast ära trendijoone. 731 00:39:57,760 --> 00:40:02,805 Ja meie r ruudus siin on 0,81, mis on natuke parem kui see, mida 732 00:40:02,805 --> 00:40:07,640 meil oli enne, 0.52. 733 00:40:07,640 --> 00:40:09,750 >> Ja nii nüüd lisame Mõiste sellele regressiooni. 734 00:40:09,750 --> 00:40:13,020 Nii saab taanduda miili galloni nii Logi kaalude 735 00:40:13,020 --> 00:40:21,130 ja teeme, q miili, veerand miil aega. 736 00:40:21,130 --> 00:40:26,190 OK, see peab olema the-- kõik korras, 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-- kahju, mida? 740 00:40:35,000 --> 00:40:37,000 Las ma nimetan seda midagi muud peale MODEL2. 741 00:40:37,000 --> 00:40:38,000 Las ma nimetan seda model3. 742 00:40:38,000 --> 00:40:40,860 743 00:40:40,860 --> 00:40:42,900 Ja nii nüüd me saame teha kokkuvõtte model3. 744 00:40:42,900 --> 00:40:46,850 745 00:40:46,850 --> 00:40:49,100 Ja nii uuesti, see on põhimõtteliselt Te võite oodata. 746 00:40:49,100 --> 00:40:51,750 Sul on positiivne lõikepunkti. 747 00:40:51,750 --> 00:40:54,550 Efektiivne suurendamine kaal on negatiivne. 748 00:40:54,550 --> 00:40:58,490 Ja tõhusa suurendades veerand miil aeg 749 00:40:58,490 --> 00:41:02,420 on positiivne, kuid siiski vähem kui kaal. 750 00:41:02,420 --> 00:41:06,010 Nüüd intuitiivselt, saate mõtestada Selle juurde mõelda sportautodele. 751 00:41:06,010 --> 00:41:08,950 Seal on väga kiire kiirendus, Väga lühikese veerand miil korda. 752 00:41:08,950 --> 00:41:13,729 Nad on ka kavatse kasutada rohkem gaasi, arvestades, et enam mõistlik autod lähevad 753 00:41:13,729 --> 00:41:16,020 on aeglasem kiirendus, suurem veerand miil korda 754 00:41:16,020 --> 00:41:20,890 ja kasutada vähem gaasi ,, nii suurem miili galloni. 755 00:41:20,890 --> 00:41:21,390 Hea. 756 00:41:21,390 --> 00:41:23,431 Ja nii nüüd on aeg krundi midagi sellist. 757 00:41:23,431 --> 00:41:27,810 Nii saab do-- nii paljad luud me saame teha plots-- 758 00:41:27,810 --> 00:41:35,280 sest ma olen lisatud andmete raami before-- saame just seda krunti, massi mpg. 759 00:41:35,280 --> 00:41:38,762 760 00:41:38,762 --> 00:41:39,720 Tee seda natuke suurem. 761 00:41:39,720 --> 00:41:55,050 762 00:41:55,050 --> 00:41:57,350 Seal me põhimõtteliselt on hajuvusdiagrammile, kuid punktid 763 00:41:57,350 --> 00:41:58,690 on omamoodi raske mõista seda. 764 00:41:58,690 --> 00:42:04,860 765 00:42:04,860 --> 00:42:10,900 >> Ma ei mäleta, heast peast, mida süntaks on muutumas krundi. 766 00:42:10,900 --> 00:42:14,100 Nii et ma arvan, et see on hea aeg tuua, 767 00:42:14,100 --> 00:42:18,000 seal on väga kena sisseehitatud abi funktsioon, abi hinnapakkumisi funktsiooni nime. 768 00:42:18,000 --> 00:42:21,690 Me avab põhimõtteliselt midagi soovid. 769 00:42:21,690 --> 00:42:28,010 770 00:42:28,010 --> 00:42:32,730 Ma arvan, et ma tegelikult teha tüübist võrdub p punktide krundid. 771 00:42:32,730 --> 00:42:34,369 Kas see muudaks midagi? 772 00:42:34,369 --> 00:42:35,160 Ja ei, mitte eriti. 773 00:42:35,160 --> 00:42:39,160 774 00:42:39,160 --> 00:42:39,660 Hästi. 775 00:42:39,660 --> 00:42:46,760 776 00:42:46,760 --> 00:42:49,580 >> Mingil põhjusel, kui ma tegin seda minu oma arvuti mõnda aega tagasi, 777 00:42:49,580 --> 00:42:52,080 kõik hajumine punktid olid palju selgem. 778 00:42:52,080 --> 00:43:06,390 779 00:43:06,390 --> 00:43:13,970 Igatahes on hajumine liiki nähtav? 780 00:43:13,970 --> 00:43:15,124 Seal on üks seal. 781 00:43:15,124 --> 00:43:16,165 Paar seal, mõned seal. 782 00:43:16,165 --> 00:43:18,860 783 00:43:18,860 --> 00:43:21,185 Võite omamoodi neid näha, eks? 784 00:43:21,185 --> 00:43:24,310 Nii et kui me tahame, et lisada kõige sobivam liin sellele krundile siin, mis on natuke paljaste 785 00:43:24,310 --> 00:43:29,290 bones-- lase mul teha seda veidi kenamaks. 786 00:43:29,290 --> 00:43:38,075 Main võrdub versus kaal. 787 00:43:38,075 --> 00:43:46,322 788 00:43:46,322 --> 00:43:49,740 Miili galloni. 789 00:43:49,740 --> 00:43:53,570 Jällegi, näed, kuidas kasulik vabatahtlik argumendid on siin ka 790 00:43:53,570 --> 00:43:58,090 ei pea nägema asju Teatud et klaviatuuri argumendid 791 00:43:58,090 --> 00:44:01,600 Kui teil on krundid, sest Nende võtab palju argumente. 792 00:44:01,600 --> 00:44:07,490 >> Xlab võrdne kaal, kaalu, tonni. 793 00:44:07,490 --> 00:44:10,091 794 00:44:10,091 --> 00:44:10,590 Hästi. 795 00:44:10,590 --> 00:44:17,340 796 00:44:17,340 --> 00:44:21,480 OK, jah, see seade on on natuke tüütu. 797 00:44:21,480 --> 00:44:30,160 Aga näed omamoodi seal, seal on graafik pealkiri küljel. 798 00:44:30,160 --> 00:44:35,260 Üle siin there's-- põhjas siin on teljetähiste. 799 00:44:35,260 --> 00:44:37,700 Ma ei mäleta, heast peast mida käske ars-- 800 00:44:37,700 --> 00:44:41,000 Mis funktsioonid on suurendada suurus need sildid ja pealkirjad, 801 00:44:41,000 --> 00:44:43,110 kuid nad on olemas. 802 00:44:43,110 --> 00:44:46,625 >> Ja kui me tahame lisada kõige sobivam liin, 803 00:44:46,625 --> 00:44:49,250 me võiks teha midagi like-- ma on süntaksi kirjutatud siin. 804 00:44:49,250 --> 00:44:52,280 805 00:44:52,280 --> 00:45:11,130 Seega pidage meeles, me lihtsalt lisada mudel oli mpg, kaal, mtcars. 806 00:45:11,130 --> 00:45:16,470 Ja nii kui ma tahtsin lisada kõige sobivam line, ma võiks teha, b line mudel. 807 00:45:16,470 --> 00:45:18,556 Ja buum on meil kõige sobivam liin. 808 00:45:18,556 --> 00:45:19,970 See on selline raske näha jälle. 809 00:45:19,970 --> 00:45:22,178 Ma olen üsna vabandan tehnoloogiliste raskustega. 810 00:45:22,178 --> 00:45:25,230 Aga see töötab põhimõtteliselt ülevalt vasakult alt paremale. 811 00:45:25,230 --> 00:45:27,550 >> Ja kui skaala oli suurem, siis võiks näha 812 00:45:27,550 --> 00:45:31,260 et lõikepunkt on, mida saate leida kokkuvõttest statistika 813 00:45:31,260 --> 00:45:34,790 kui sa kirjutad kokkuvõte mudel. 814 00:45:34,790 --> 00:45:40,130 OK, nii et ma loodan, et kõik läheb midagi aru sellest, mida 815 00:45:40,130 --> 00:45:42,030 R on, mida ta on hea. 816 00:45:42,030 --> 00:45:45,520 Sa võid teha palju kenamaks krundid kui selle ise korda, kui soovite. 817 00:45:45,520 --> 00:45:50,100 818 00:45:50,100 --> 00:45:53,950 >> Nii et välismaa funktsiooni liides. 819 00:45:53,950 --> 00:46:00,330 See on midagi, mis ei ole tavaliselt kaetud sissejuhatav loengud 820 00:46:00,330 --> 00:46:03,560 või sissejuhatav midagi r. 821 00:46:03,560 --> 00:46:05,584 See ei ole tõenäoline, sa lähed vajavad. 822 00:46:05,584 --> 00:46:08,000 Kuid minu arvates oli see kasulik minu projektid varem. 823 00:46:08,000 --> 00:46:10,984 Ja pole hea Treening seda võrgus. 824 00:46:10,984 --> 00:46:12,900 Nii et ma olen lihtsalt kavatse kiirustada teid kõiki selle kaudu 825 00:46:12,900 --> 00:46:16,606 ja siis oled vaba lahkuda. 826 00:46:16,606 --> 00:46:18,480 Ja nii välis- funktsiooni liides, mida 827 00:46:18,480 --> 00:46:23,130 saate helistada läbi näha funktsioonid, mis R. Sisemiselt 828 00:46:23,130 --> 00:46:29,850 R on ehitatud C. R on aritmeetika on lihtsalt C on 64-bitine ujukoma aritmeetika, 829 00:46:29,850 --> 00:46:32,852 mis on Topelt [kuuldamatu]. 830 00:46:32,852 --> 00:46:35,060 Ja võiksite teha see kamp põhjustel. 831 00:46:35,060 --> 00:46:39,250 Ühe R tõlgendatakse, see on ei arvutata alla masinkoodi. 832 00:46:39,250 --> 00:46:42,170 Nii saab kirjutada oma sisemine silmuseid C ja siis saan 833 00:46:42,170 --> 00:46:45,920 ära kasutades R. Like see on natuke mugavam kui C. 834 00:46:45,920 --> 00:46:48,899 See on parem graphing rajatised ja tühi-tähi. 835 00:46:48,899 --> 00:46:51,690 Ja samas on võimalik saada tippkiirus välja silmuseid, 836 00:46:51,690 --> 00:46:53,650 mis on kui sa tõesti seda vajavad. 837 00:46:53,650 --> 00:46:56,330 >> Kasutab olemasolevaid C teeke, see on ka oluline. 838 00:46:56,330 --> 00:47:00,320 Kui teil on C raamatukogu nagu, Ma ei tea, Fourier ', 839 00:47:00,320 --> 00:47:05,190 või väga Archean Statistika korras kasutatud 840 00:47:05,190 --> 00:47:09,470 kõrge energia astrofüüsika või midagi, ma ei tea. 841 00:47:09,470 --> 00:47:13,058 Kõrge energia astrofüüsika ei ole isegi mõelda, ma arvan. 842 00:47:13,058 --> 00:47:16,480 Aga sa ei saa seda teha, selle asemel, kirjutada native R port neist. 843 00:47:16,480 --> 00:47:22,725 Ja the-- ja jälle, nagu siis, kui sa vaata enamik R vaikimisi raamatukogud, 844 00:47:22,725 --> 00:47:25,600 kohta sisemust, sisemust on kavatsete kasutada välisriikide funktsiooni 845 00:47:25,600 --> 00:47:26,724 liides väga laialdaselt. 846 00:47:26,724 --> 00:47:31,630 Nad on asjad Fourier muudab või arvuti korrelatsioon 847 00:47:31,630 --> 00:47:34,890 koefitsiendid kirjutatud C, ja nad lihtsalt R ümbrised ümber. 848 00:47:34,890 --> 00:47:38,230 Kasutajaliides on natuke raske. ma arvan 849 00:47:38,230 --> 00:47:43,750 tal oli raskusi on liialdatud on palju juhiseid leiad. 850 00:47:43,750 --> 00:47:46,200 Aga siiski see on natuke segane. 851 00:47:46,200 --> 00:47:48,650 Ja ma ei ole suutnud leida hea juhendaja seda, 852 00:47:48,650 --> 00:47:51,980 nii et see on just nüüd. 853 00:47:51,980 --> 00:47:55,360 Jällegi, kogu see segment on rohkem edasipidiseks. 854 00:47:55,360 --> 00:47:57,687 Ära muretse kopeerimine kõike ette kohe. 855 00:47:57,687 --> 00:48:00,020 Nii järgmisi juhiseid on Unix-laadsete süsteemide, 856 00:48:00,020 --> 00:48:05,150 Linux, BSD, OS X. Ma ei tea, kuidas see töötab Windows, 857 00:48:05,150 --> 00:48:08,280 aga palun lihtsalt ei tee oma Lõplik projekt Windows. 858 00:48:08,280 --> 00:48:10,790 859 00:48:10,790 --> 00:48:12,460 Sa tõesti ei taha. 860 00:48:12,460 --> 00:48:14,770 Unix on palju parem komplekt kuni igapäevaseks programmeerimine. 861 00:48:14,770 --> 00:48:19,320 862 00:48:19,320 --> 00:48:21,390 Niisiis, põhimõtteliselt välismaa funktsiooni liides. 863 00:48:21,390 --> 00:48:24,420 Kui soovite kirjutada C funktsiooni kasutamiseks R, 864 00:48:24,420 --> 00:48:27,250 ta peab võtma kõik argumente suunanäitajaks. 865 00:48:27,250 --> 00:48:30,666 >> Nii ühe väärtusi, seda tähendab see osutas väärtus. 866 00:48:30,666 --> 00:48:33,040 Suhe massiivid, seda on viit esimesele element, mille 867 00:48:33,040 --> 00:48:36,750 on see, mis massiivi nimed tegelikult tähendavad. 868 00:48:36,750 --> 00:48:40,140 Jällegi, see on midagi, siis peaks olema päris täiesti maha pärast p seatud viis. 869 00:48:40,140 --> 00:48:43,334 Array nimed on vaid viiteid esimesele element, 870 00:48:43,334 --> 00:48:44,750 Murdarv tüüp on topelt. 871 00:48:44,750 --> 00:48:47,310 Ja teie ülesanne on taastada tühine. 872 00:48:47,310 --> 00:48:50,810 Ainus võimalus, et ta saab tegelikult öelda R juhtunu 873 00:48:50,810 --> 00:48:54,410 on muutes mälu, R andis et see läbi välisriigi funktsiooni 874 00:48:54,410 --> 00:48:54,910 liides. 875 00:48:54,910 --> 00:48:58,180 876 00:48:58,180 --> 00:49:00,127 >> Nii et ma olen kirjutanud selle Näiteks siin, see on 877 00:49:00,127 --> 00:49:02,460 funktsioon, mis arvutab kasutamiseks skalaarkorrutis Kahe vektori. 878 00:49:02,460 --> 00:49:05,060 Kasutada saab kaht argumenti, vec1, vec2, mis on vektorite endi 879 00:49:05,060 --> 00:49:06,934 ja siis n, mis on pikkusega, sest jällegi 880 00:49:06,934 --> 00:49:12,630 R on ehitatud [kuuldamatu] välja selgitada pikkus vektorid, kuid C ei ole. 881 00:49:12,630 --> 00:49:16,182 In C, vektorid on suvaline piiritletud patakas mälu. 882 00:49:16,182 --> 00:49:17,890 Nii, kuidas saad arvutada dot tooteid 883 00:49:17,890 --> 00:49:23,470 on lihtsalt märkides selle parameetri nulli ja siis korrata läbi 884 00:49:23,470 --> 00:49:28,760 1 täht n, sest n on osuti pikkus, 885 00:49:28,760 --> 00:49:32,929 veel lisada midagi Selle välja parameeter. 886 00:49:32,929 --> 00:49:34,970 Ja see võib olla hea tava kui sa lähed tegema 887 00:49:34,970 --> 00:49:37,270 Selle kirjutada kaks eraldi C funktsioone. 888 00:49:37,270 --> 00:49:41,970 Üks neist has-- Üks neist lihtsalt võtab argumendid ja liigid 889 00:49:41,970 --> 00:49:43,970 et nad oleks harilikult C. 890 00:49:43,970 --> 00:49:47,780 >> Nii kulub massiivi argumente suunanäitajaks. 891 00:49:47,780 --> 00:49:57,090 Aga ühe väärtuse argumendi, nagu n, see lihtsalt võtab nii väärtuste koopia, 892 00:49:57,090 --> 00:49:57,917 ilma suunanäitajaks. 893 00:49:57,917 --> 00:49:59,750 Ja siis seda ei juhtu [Kuuldamatu] välja pointer. 894 00:49:59,750 --> 00:50:01,290 Ja siis võib olla erinev, põhimõtteliselt 895 00:50:01,290 --> 00:50:03,623 ümbris funktsioon, mis põhimõtteliselt käepidemed nõuetele 896 00:50:03,623 --> 00:50:07,740 välisriigi funktsiooni liides teile. 897 00:50:07,740 --> 00:50:11,840 >> See, kuidas te nimetate seda R on, kui teil on oma funktsioon kirjutatud C, 898 00:50:11,840 --> 00:50:17,770 kirjutad R cmd shlib, R käsk jagatud raamatukogu 899 00:50:17,770 --> 00:50:20,110 suva dot c, või mis iganes faili nimi on, 900 00:50:20,110 --> 00:50:23,020 ja OS laduma mitte R terminal. 901 00:50:23,020 --> 00:50:25,200 Ja see loob raamatukogu nimega foo dot nii. 902 00:50:25,200 --> 00:50:28,180 Ja siis saab paigutada see meie skripti või interaktiivselt 903 00:50:28,180 --> 00:50:32,310 käsuga dyn dot koormus. 904 00:50:32,310 --> 00:50:35,720 Siis on funktsioon R nimetatakse dot c. 905 00:50:35,720 --> 00:50:39,310 >> See võtab argumendid, mis on Esimene nime funktsiooni C 906 00:50:39,310 --> 00:50:40,970 et soovite helistada. 907 00:50:40,970 --> 00:50:43,920 Ja siis kõik parameetrid seda funktsiooni, 908 00:50:43,920 --> 00:50:45,420 nad peavad olema nõuetekohasust. 909 00:50:45,420 --> 00:50:48,580 Sa pead kasutama seda tüüpi sunni toimib täisarvuni 910 00:50:48,580 --> 00:50:52,050 double, kui märk ja loogiliseks. 911 00:50:52,050 --> 00:50:54,710 Ja siis, kui ta tagastab nimekirja, mis jällegi on lihtsalt 912 00:50:54,710 --> 00:50:57,550 sellega seotud massiivi parameeter nimed ja väärtused 913 00:50:57,550 --> 00:51:00,950 pärast funktsiooni käivitada. 914 00:51:00,950 --> 00:51:08,520 >> Nii et sel juhul, sest dot prod on argumendid vec1, vec2 ja int n, n välja. 915 00:51:08,520 --> 00:51:11,980 Et dot c meil dot prod, nimi funktsiooni 916 00:51:11,980 --> 00:51:16,250 me kutsudes, vec1, vec2 tüüp sundimaks. 917 00:51:16,250 --> 00:51:20,060 Pikkus kas vektori Ma valisin vec1 meelevaldselt. 918 00:51:20,060 --> 00:51:25,479 Oleks tugevam öelda s täisarv min pikkus vec1, pikkus vec2. 919 00:51:25,479 --> 00:51:27,520 Siis lihtsalt topelt null, sest me tõesti ei 920 00:51:27,520 --> 00:51:29,644 huvita, mida läheb välja parameeter, kuna me oleme 921 00:51:29,644 --> 00:51:32,270 milles see nulli niikuinii. 922 00:51:32,270 --> 00:51:37,560 >> Ja siis tulemusi ei kavatse olla big seotud rida põhimõtteliselt 923 00:51:37,560 --> 00:51:42,090 vec1 on ükskõik, vec2 on ükskõik. 924 00:51:42,090 --> 00:51:44,330 Aga me oleme huvitatud läbi, nii et me saame selle välja. 925 00:51:44,330 --> 00:51:47,780 See on jälle väga toy näiteks Välismaa funktsiooni liides. 926 00:51:47,780 --> 00:51:54,160 Aga kui sul on arvutada dot tooted massiivne vektorite silmad, 927 00:51:54,160 --> 00:51:56,960 või kui sa pead tegema midagi muud tsüklitesse 928 00:51:56,960 --> 00:51:59,850 ja sa ei taha toetuda R, mis ei ole natuke õhuliini 929 00:51:59,850 --> 00:52:02,830 ehitatud see, see võib olla kasulik. 930 00:52:02,830 --> 00:52:05,870 >> Jällegi, see ei ole tavaliselt sissejuhatav teema R. 931 00:52:05,870 --> 00:52:08,571 See ei ole väga hästi dokumenteeritud. 932 00:52:08,571 --> 00:52:11,070 Ma lihtsalt kaasa, sest Ma leidsin selle kasulik minevikus. 933 00:52:11,070 --> 00:52:13,654 Nii halbu tavasid. 934 00:52:13,654 --> 00:52:15,820 Mainisin, et seal on for loop funktsioon. 935 00:52:15,820 --> 00:52:21,150 Üldiselt sa ei tohiks see keelt, ei kasuta seda. 936 00:52:21,150 --> 00:52:26,100 Tuginedes kuidas R rakendab iteratsiooni sisemiselt, see võib olla aeglane. 937 00:52:26,100 --> 00:52:28,540 Nad lihtsalt otsida ka kole. 938 00:52:28,540 --> 00:52:32,410 >> R käepidemed vektorid väga kenasti, nii Sageli ei ole vaja seda kasutada. 939 00:52:32,410 --> 00:52:35,050 940 00:52:35,050 --> 00:52:38,900 Siis saate tavaliselt asendada vektor sageli 941 00:52:38,900 --> 00:52:42,490 nende funktsioonidega nn kõrge Selleks funktsioone, kaart, vähendada 942 00:52:42,490 --> 00:52:44,404 Leia või Filter. 943 00:52:44,404 --> 00:52:46,320 Ma lihtsalt annan mõned näiteid, mida need teevad. 944 00:52:46,320 --> 00:52:49,957 Kaart on kõrgemat järku funktsioon, sest see võtab funktsiooni argumendina. 945 00:52:49,957 --> 00:52:52,290 Nii saab anda see funktsioon, võite anda talle massiiv, 946 00:52:52,290 --> 00:52:54,640 ja see kehtib funktsiooni iga element massiivi 947 00:52:54,640 --> 00:52:55,681 ja tagastab uue massiivi. 948 00:52:55,681 --> 00:52:58,035 949 00:52:58,035 --> 00:53:00,160 Vähendage, põhimõtteliselt annad see massiiv, annad 950 00:53:00,160 --> 00:53:02,930 funktsioon, mis võtab kaks argumenti. 951 00:53:02,930 --> 00:53:07,100 See kehtib funktsiooni esimesena, Esimene argument mõned starter väärtus. 952 00:53:07,100 --> 00:53:09,440 Siis selle tulemuseks teine. 953 00:53:09,440 --> 00:53:12,590 Siis selle tulemusena kolmandas, Seejärel selle tulemusena neljandas. 954 00:53:12,590 --> 00:53:14,870 Ja siis tagasi, kui ta jõuab lõpuks. 955 00:53:14,870 --> 00:53:17,620 Nii näiteks, kui soovite arvutada summa kõikide elementide 956 00:53:17,620 --> 00:53:23,240 massiivi, kui võite helistada vähendada koos [kuuldamatu] vähendada lisaks 957 00:53:23,240 --> 00:53:26,620 funktsioon, nagu funkts a, b, tagasi pluss b. 958 00:53:26,620 --> 00:53:28,960 Ja siis hakkavad väärtus 0. 959 00:53:28,960 --> 00:53:32,950 >> Ja kõik need, leiad neid kirjeldatud R dokumentatsiooni, 960 00:53:32,950 --> 00:53:35,720 Igal õpiku funktsionaalne programmeerimine. 961 00:53:35,720 --> 00:53:38,330 Seal on ka selle klassi funktsioone nimetatakse kohaldatakse funktsioone, 962 00:53:38,330 --> 00:53:42,807 mis ma don't-- nad natuke raske seletada, 963 00:53:42,807 --> 00:53:45,640 aga kui sa vaatad [kuuldamatu] broneeritud, et ma viidatud alguses, 964 00:53:45,640 --> 00:53:48,615 selgitab ta neid päris hästi Tema lisas teadus programmeerimine. 965 00:53:48,615 --> 00:53:51,599 966 00:53:51,599 --> 00:53:53,390 Loe tavasid, Lisandusid vektoreid. 967 00:53:53,390 --> 00:53:57,570 968 00:53:57,570 --> 00:53:58,070 Jah? 969 00:53:58,070 --> 00:54:01,651 970 00:54:01,651 --> 00:54:02,900 Ma arvan, et ma peaks parandama. 971 00:54:02,900 --> 00:54:07,450 Selle esimene rida, vec nool, et nool ei peaks seal olema. 972 00:54:07,450 --> 00:54:10,920 Võite määrata vektor, jälle, mida teha selle pikkus pluss 1 973 00:54:10,920 --> 00:54:13,220 ja määrates mingi väärtus sellele. 974 00:54:13,220 --> 00:54:18,970 See pikendab vektor, või siis saab teha vec võrdsete c, vec newvalue. 975 00:54:18,970 --> 00:54:21,540 Jällegi, kui te kasutate C üks argument vektor, 976 00:54:21,540 --> 00:54:23,300 tulemuseks hierarhia muutub lapik. 977 00:54:23,300 --> 00:54:27,160 Nii saate lihtsalt saada vektori mis on pikendada 1. 978 00:54:27,160 --> 00:54:30,410 Ära tee seda. 979 00:54:30,410 --> 00:54:33,330 >> Põhjus, miks sa ei tohiks seda teha on see. 980 00:54:33,330 --> 00:54:37,430 Kui eraldada vektor, siis annab see teatud patakas mälu. 981 00:54:37,430 --> 00:54:40,680 Kui teil suurendada, et vektori suurus, see on ümber jaotada vektor 982 00:54:40,680 --> 00:54:43,820 kusagil mujal. 983 00:54:43,820 --> 00:54:46,980 Ja nii ümberjaotamine on üsna kallis. 984 00:54:46,980 --> 00:54:50,530 Ma ei hakka üksikasju, kuidas mälu jaoturid rakendamine 985 00:54:50,530 --> 00:54:57,280 operatsioonisüsteemi tasandil, kuid see võtab palju aega 986 00:54:57,280 --> 00:54:58,962 leida uus patakas mälu. 987 00:54:58,962 --> 00:55:00,920 Ja ka siis, kui sa oled ümberjaotamiseks palju, palju 988 00:55:00,920 --> 00:55:03,500 järk-järgult suurema tükkideks, siis lõpuks 989 00:55:03,500 --> 00:55:06,420 midagi nimetatakse mälu killustatus, 990 00:55:06,420 --> 00:55:09,390 kus mälu on jaotatud osadeks vähe plokid 991 00:55:09,390 --> 00:55:11,500 mällu jaoturid seisukohast. 992 00:55:11,500 --> 00:55:15,340 Ja see muutub raskemaks ja raskemaks leida mälu muid asju. 993 00:55:15,340 --> 00:55:19,455 Nii et selle asemel, kui teil on vaja teha, kui peate kasvada vektor ühest otsast 994 00:55:19,455 --> 00:55:24,240 järgmisele asemel lisades sellele pidevalt, siis tuleb eelnevalt eraldab. 995 00:55:24,240 --> 00:55:29,310 Vec nool, vektor pikkus võrdub 1000, või mis iganes. 996 00:55:29,310 --> 00:55:33,200 >> Ja siis saab lihtsalt määrata vektori väärtuste ühe 997 00:55:33,200 --> 00:55:36,000 aeg pärast olete suunata see kord. 998 00:55:36,000 --> 00:55:40,140 Jooksin seda jällegi minu suveks tööd kui ma kirjutasin NRA erinevus 999 00:55:40,140 --> 00:55:42,120 Võrrandilahendaja. 1000 00:55:42,120 --> 00:55:43,180 Ei sümboolne numbritega. 1001 00:55:43,180 --> 00:55:49,290 Idee on selles, et kui sul on üks väärtus oma lahendus, 1002 00:55:49,290 --> 00:55:51,240 te kasutate, et arvutada järgmise üks. 1003 00:55:51,240 --> 00:55:53,700 Nii et minu loomulik naiivne kalle oli öelda OK, 1004 00:55:53,700 --> 00:55:56,930 nii et ma hakkan vektori see on oluline väärtus. 1005 00:55:56,930 --> 00:56:01,260 Arvuta sellest järgmine väärtus mis läheb peale minu lahendus vektor, 1006 00:56:01,260 --> 00:56:02,630 ja lisab, et. 1007 00:56:02,630 --> 00:56:05,290 >> Loo midagi muud, lisab nimetatud. 1008 00:56:05,290 --> 00:56:08,120 See läks väga aeglaselt. 1009 00:56:08,120 --> 00:56:11,540 Ja kui ma mõistsin seda ja ma muutsin süsteemi 1010 00:56:11,540 --> 00:56:16,020 alates lisades, et see vektor nagu 10000 100000 korda, 1011 00:56:16,020 --> 00:56:18,910 lihtsalt eelnevalt eraldada vektor ja lihtsalt töötab nii. 1012 00:56:18,910 --> 00:56:22,100 Ma sain üle 1000 korda kiirendada. 1013 00:56:22,100 --> 00:56:26,280 Nii et see on väga levinud lõksu R programmeerimine. 1014 00:56:26,280 --> 00:56:31,560 Kui teil on vaja luua vektor jaokaupa, pre-eraldab. 1015 00:56:31,560 --> 00:56:35,360 1016 00:56:35,360 --> 00:56:40,240 >> Teine levinud reisi up-- see on minu viimane slide, ei worry-- on vigade käsitlemist. 1017 00:56:40,240 --> 00:56:42,890 R, ausalt öeldes, ei ole tõesti väga hästi. 1018 00:56:42,890 --> 00:56:45,010 Seal on palju probleeme, mis võivad ette tulema. 1019 00:56:45,010 --> 00:56:48,360 Näiteks, kui sa saad hulgaliselt või vektor välja funktsiooni 1020 00:56:48,360 --> 00:56:52,377 et sa ootasid ühe väärtus tulema, või vastupidi, 1021 00:56:52,377 --> 00:56:55,460 ja te kaotate seda arvesse funktsioon, mis sa kirjutasid ootab üksik väärtus, 1022 00:56:55,460 --> 00:56:57,270 mis võib olla probleemiks. 1023 00:56:57,270 --> 00:57:01,440 >> Teatud funktsioonid tagasi null nagu seda teevad, ütleme, 1024 00:57:01,440 --> 00:57:05,560 lugemine olematu võti nimekirja. 1025 00:57:05,560 --> 00:57:08,527 Aga null ei ole nagu C kus, kui sa püüad lugeda 1026 00:57:08,527 --> 00:57:11,360 vanast pointer, [kuuldamatu] to nullviida, see lihtsalt SEG vead 1027 00:57:11,360 --> 00:57:14,109 ja kui sa oled oma siluri see ütleb teile täpselt, kus sa oled. 1028 00:57:14,109 --> 00:57:17,080 1029 00:57:17,080 --> 00:57:20,772 Selle asemel, null on do-- funktsioonid teeme ettearvamatu asju 1030 00:57:20,772 --> 00:57:21,730 kui nad käega null. 1031 00:57:21,730 --> 00:57:24,575 Nagu kui sa kätte max null, see annab sulle negatiivne lõpmatus. 1032 00:57:24,575 --> 00:57:27,230 1033 00:57:27,230 --> 00:57:28,190 Ja nii, jah. 1034 00:57:28,190 --> 00:57:30,880 1035 00:57:30,880 --> 00:57:32,630 Ja nii see juhtus mulle kord, kui ma pidin 1036 00:57:32,630 --> 00:57:34,771 muuta kamp väljad minu nimekirja struktuur 1037 00:57:34,771 --> 00:57:37,520 kord muutmata neid mujal kui ma lugesin neid. 1038 00:57:37,520 --> 00:57:40,670 Ja siis ma sain igasuguseid juhuslikke lõpmatus tulemusi koristuse üles 1039 00:57:40,670 --> 00:57:43,080 ja ma ei tea, kust nad tulid. 1040 00:57:43,080 --> 00:57:45,310 Ja kahjuks pole no tõeline R range režiim 1041 00:57:45,310 --> 00:57:48,940 kus saab öelda, et kui midagi tundub, et see võiks olla viga, 1042 00:57:48,940 --> 00:57:51,960 lihtsalt peatuda, et ma saaks olla distsiplineeritud ja kinnitage seda. 1043 00:57:51,960 --> 00:57:55,282 1044 00:57:55,282 --> 00:57:57,240 Siiski on midagi nimetatakse stop kui mitte. 1045 00:57:57,240 --> 00:58:00,480 See võrdub C-dest assert, kui olete rääkinud sellest. 1046 00:58:00,480 --> 00:58:02,690 Ma ei usu, C väita on loengu teema 1047 00:58:02,690 --> 00:58:06,370 kuid oma osa liider oleks läinud üle. 1048 00:58:06,370 --> 00:58:10,393 Ja lõpetage kui mitte põhimõtteliselt võtab tahes predikaat, nii et kõik kinnitus, et 1049 00:58:10,393 --> 00:58:11,824 võib olla tõene või väär. 1050 00:58:11,824 --> 00:58:13,490 Ja kui see on vale, see peatub oma programmi. 1051 00:58:13,490 --> 00:58:18,260 See ütleb teile täpselt, mida liinist olid ja millises seisus ei suutnud. 1052 00:58:18,260 --> 00:58:21,910 >> Ja see väga kasulik, näiteks meelerahu kontrolli, funktsioon sisendeid. 1053 00:58:21,910 --> 00:58:25,110 Nii et kui teil on funktsioon ja ootate, ütleme, 1054 00:58:25,110 --> 00:58:29,640 kui sa peaksid mulle kuupäev, ma tahan kuupäevad on lihtsalt vektor pikkusega 1 1055 00:58:29,640 --> 00:58:31,735 ja kuskil 1 ja 31. 1056 00:58:31,735 --> 00:58:34,420 1057 00:58:34,420 --> 00:58:36,170 Ja kui ei, ma tean Midagi on valesti läinud. 1058 00:58:36,170 --> 00:58:40,280 Ja ma valin peatuda enne seda on juhuslik koputama toimet koodi 1059 00:58:40,280 --> 00:58:44,190 et see on raskem jälgida läbi. 1060 00:58:44,190 --> 00:58:47,170 Nii et üks võimalik kasutada stop kui mitte. 1061 00:58:47,170 --> 00:58:48,660 >> Igatahes OK. 1062 00:58:48,660 --> 00:58:49,690 Nii et lõpus. 1063 00:58:49,690 --> 00:58:51,290 Tänan sind nii palju tulemas. 1064 00:58:51,290 --> 00:58:53,710 Olen Koht amatöör selles. 1065 00:58:53,710 --> 00:58:57,270 Nii kahju, kui sa oled igav või segaduses või mida iganes. 1066 00:58:57,270 --> 00:59:01,670 Ma olen õnnelik, et võtta küsimused e-posti teel kell connorharris@college.harvard.edu. 1067 00:59:01,670 --> 00:59:07,230 See kehtib ka kõigile vaadates seda elada või hiljem. 1068 00:59:07,230 --> 00:59:10,190 Samuti, kuigi ma ei ole TF, ma olen ka väga 1069 00:59:10,190 --> 00:59:13,900 valmis olla mitteametlik nõustaja, kes on 1070 00:59:13,900 --> 00:59:15,460 kasutades R lõpliku projektiga. 1071 00:59:15,460 --> 00:59:19,900 >> Kui soovite, et siis lihtsalt rääkida oma TF 1072 00:59:19,900 --> 00:59:23,750 ja siis kirjutage mulle email, nii Ma tean, mida te töötate 1073 00:59:23,750 --> 00:59:26,680 ja et ma saaks luua koosolek korda kui soovid. 1074 00:59:26,680 --> 00:59:27,990 Nii jälle, tänan teid väga. 1075 00:59:27,990 --> 00:59:28,960 Loodan, et teile meeldis see. 1076 00:59:28,960 --> 00:59:29,450 >> Sihtrühm: [kuuldamatu]. 1077 00:59:29,450 --> 00:59:30,617 >> CONNER HARRIS: Muidugi. 1078 00:59:30,617 --> 00:59:34,910 >> Sihtrühm: Milline projekti oleks CS õpilane kasutada R? 1079 00:59:34,910 --> 00:59:37,427 1080 00:59:37,427 --> 00:59:40,510 CONNER HARRIS: Nii et kui sa ei tee midagi, mis on puhtalt andmete kaevandamine, 1081 00:59:40,510 --> 00:59:43,790 Näiteks, ja seal On palju asju, 1082 00:59:43,790 --> 00:59:46,692 sa võiksid teha, et andmed kaevandamise ja masin õppe. 1083 00:59:46,692 --> 00:59:48,900 Võiksid kasutada R komponent midagi. 1084 00:59:48,900 --> 00:59:52,022 Ma tõin välja, mis algselt on näiteks ja kui olete kirjalikult kodulehel 1085 00:59:52,022 --> 00:59:54,730 ja soovid käivitada automatiseeritud statistilise analüüsi server 1086 00:59:54,730 --> 00:59:57,990 palke teatud ajal iga päev, mis võiks olla midagi, mis on 1087 00:59:57,990 --> 01:00:01,260 väga lihtne teha vaid lühikese R script, et saate ajakava 1088 01:00:01,260 --> 01:00:04,200 joosta igal õhtul, näiteks. 1089 01:00:04,200 --> 01:00:06,550 >> Ja ma olen kindel, kui seal on mingil põhjusel soovite 1090 01:00:06,550 --> 01:00:11,520 tahan statistika või graafikute võimeid ja on selle aja jooksul automaatselt asemel 1091 01:00:11,520 --> 01:00:13,790 võttes suhelda asju Excel, 1092 01:00:13,790 --> 01:00:16,750 Näiteks, see on midagi, võiksite kasutada R. 1093 01:00:16,750 --> 01:00:21,190 Nii veel küsimusi, enne kui ma lahkuda? 1094 01:00:21,190 --> 01:00:21,690 No? 1095 01:00:21,690 --> 01:00:24,960 Olgu, hästi, jälle, tänan Teid väga varsti. 1096 01:00:24,960 --> 01:00:29,417