1 00:00:00,000 --> 00:00:00,750 2 00:00:00,750 --> 00:00:09,800 >> [Predvaja glasba] 3 00:00:09,800 --> 00:00:13,014 4 00:00:13,014 --> 00:00:13,680 Dustin TRAN: Hi. 5 00:00:13,680 --> 00:00:14,980 Moje ime je Dustin. 6 00:00:14,980 --> 00:00:18,419 Zato bom predstavila Analiza podatkov v R. 7 00:00:18,419 --> 00:00:19,710 Samo malo o sebi. 8 00:00:19,710 --> 00:00:24,320 Jaz sem trenutno podiplomski študent v inženiring in Applied Sciences. 9 00:00:24,320 --> 00:00:28,330 Študiram stičišče strojno učenje in statistika 10 00:00:28,330 --> 00:00:31,375 tako Analiza podatkov iz raziskav je res ključnega pomena za kaj 11 00:00:31,375 --> 00:00:33,790 Delam na dnevni osnovi. 12 00:00:33,790 --> 00:00:35,710 >> In R je zlasti dobro za analizo podatkov 13 00:00:35,710 --> 00:00:39,310 ker je to zelo dobro za izdelavo prototipov. 14 00:00:39,310 --> 00:00:43,590 In ponavadi, ko delaš neko analize podatkov, veliko težav 15 00:00:43,590 --> 00:00:44,920 se dogaja, da kognitivnega. 16 00:00:44,920 --> 00:00:48,700 In tako si samo želim, da imajo nekateri res dober jezik, 17 00:00:48,700 --> 00:00:53,770 je samo dobro za to vgrajenih funkcij, v nasprotju 18 00:00:53,770 --> 00:00:57,430 k temu, da se ukvarjajo s stvarmi, nizke ravni. 19 00:00:57,430 --> 00:01:01,040 Torej na začetku, sem le, da bo uvesti kar je R, bi zato 20 00:01:01,040 --> 00:01:04,540 jo želite uporabiti, in potem šel čez v nekaj demo, 21 00:01:04,540 --> 00:01:07,060 in pojdi od tam. 22 00:01:07,060 --> 00:01:08,150 >> Torej, kaj je R? 23 00:01:08,150 --> 00:01:11,180 R je samo jezik razvil za statistične računalništvo 24 00:01:11,180 --> 00:01:12,450 in vizualizacija. 25 00:01:12,450 --> 00:01:16,000 Torej, kaj to pomeni, da je zelo odličen jezik 26 00:01:16,000 --> 00:01:22,400 za kakršno koli stvar, ki se ukvarja z Negotovost in vizualizacija podatkov. 27 00:01:22,400 --> 00:01:24,850 Torej imate vse to verjetnostne porazdelitve. 28 00:01:24,850 --> 00:01:27,140 Tam se bodo vgrajenih funkcij. 29 00:01:27,140 --> 00:01:31,650 Prav tako boste imeli odlično ubral pakete. 30 00:01:31,650 --> 00:01:34,110 >> Python je še ena konkurenčna jezik za podatke. 31 00:01:34,110 --> 00:01:40,020 In ena stvar, ki se mi zdi, da je R je veliko bolje je vizualizacija. 32 00:01:40,020 --> 00:01:45,200 Torej, kaj boste videli v demo kot dobro je le zelo intuitiven jezik 33 00:01:45,200 --> 00:01:48,050 da preprosto deluje zelo dobro. 34 00:01:48,050 --> 00:01:53,140 Prav tako je brezplačen in open source, kot je vsaka druga dobra jezik I guess. 35 00:01:53,140 --> 00:01:55,440 >> In tu, kup samo Ključne besede vrže na vas. 36 00:01:55,440 --> 00:02:00,450 To je dinamičen, kar pomeni, če imate posebna vrsta dodeljena predmetu 37 00:02:00,450 --> 00:02:02,025 kot bo to le spremeniti na letenje. 38 00:02:02,025 --> 00:02:05,670 To je leni, zato je pametno o tem kako to počne izračune. 39 00:02:05,670 --> 00:02:12,250 Funkcionalna kar pomeni, da lahko res deluje temelji off funkcij tako anything-- 40 00:02:12,250 --> 00:02:16,910 vsaka vrsta manipulacije ste tem bo temeljil izklop funkcije. 41 00:02:16,910 --> 00:02:20,162 >> Torej binarni subjekti, na primer, so le same po sebi funkcije. 42 00:02:20,162 --> 00:02:21,870 In vse, kar se ste tekoč storiti, je 43 00:02:21,870 --> 00:02:24,690 dogaja se nogama funkcije sam. 44 00:02:24,690 --> 00:02:27,140 In potem objektno kot dobro. 45 00:02:27,140 --> 00:02:30,930 >> Torej, tukaj je xkcd plot. 46 00:02:30,930 --> 00:02:34,350 Ne samo zato, ker se počutim kot Xkcd je bistvenega pomena za kakršno koli 47 00:02:34,350 --> 00:02:37,770 predstavitve, ampak zato, ker Čutim, da je to res 48 00:02:37,770 --> 00:02:42,160 kladiva poudarjajo, da veliko čas, ko delaš neko podatkov 49 00:02:42,160 --> 00:02:46,570 Analiza, problem ni toliko, kako hitro teče, 50 00:02:46,570 --> 00:02:49,850 ampak kako dolgo se dogaja, da peljal programirati nalogo. 51 00:02:49,850 --> 00:02:54,112 Torej, tukaj je samo analizo, ali Strategija ali b je bolj učinkovito. 52 00:02:54,112 --> 00:02:55,820 To se bo nekaj, kar ste 53 00:02:55,820 --> 00:02:58,290 dogaja, da se ukvarjajo z veliko v Nekako jeziki nizko stopnjo 54 00:02:58,290 --> 00:03:03,440 kadar imate opravka z SEG napakami, dodeljevanje pomnilnika, initializations, 55 00:03:03,440 --> 00:03:05,270 tudi izdelavo vgrajene funkcije. 56 00:03:05,270 --> 00:03:09,920 In te stvari vsi ravnati Zelo, zelo elegantno v R. 57 00:03:09,920 --> 00:03:12,839 >> Torej samo za to kladivo točka, največji ozko grlo 58 00:03:12,839 --> 00:03:13,880 se bo kognitivna. 59 00:03:13,880 --> 00:03:17,341 Torej, analiza podatkov je zelo težko problem. 60 00:03:17,341 --> 00:03:19,340 Ali počnete strojno učenje ali ste 61 00:03:19,340 --> 00:03:22,550 početje le nekakšne Osnovno iskanje podatkov, 62 00:03:22,550 --> 00:03:25,290 ne želite imeti sprejeti dokument 63 00:03:25,290 --> 00:03:27,440 nato pa zbere nekaj, vsakič, ko 64 00:03:27,440 --> 00:03:31,010 želite videti, kaj stolpec izgleda, kar zlasti vpisi v matrici 65 00:03:31,010 --> 00:03:32,195 izgleda. 66 00:03:32,195 --> 00:03:34,320 Torej si samo želim, da imajo nekateri res lepo vmesnik 67 00:03:34,320 --> 00:03:37,740 lahko zaženete preprosto funkcijo da so indeksi karkoli 68 00:03:37,740 --> 00:03:41,870 bi radi, in šele teči od tam. 69 00:03:41,870 --> 00:03:44,190 In morate domeno posebne jeziki za to. 70 00:03:44,190 --> 00:03:51,750 In R bo res pomagal opredeliti problem in ga rešiti na ta način. 71 00:03:51,750 --> 00:03:58,690 >> Torej, tukaj je parcela, ki prikazuje programiranje Priljubljenost R, kot je šel skozi čas. 72 00:03:58,690 --> 00:04:04,060 Torej, kot lahko vidite, tako kot 2013 ali tako da samo razstrelili strašen. 73 00:04:04,060 --> 00:04:09,570 In je bilo to samo zaradi tega velik trend v tehnološki industriji 74 00:04:09,570 --> 00:04:10,590 o velikih podatkov. 75 00:04:10,590 --> 00:04:13,010 Prav tako ni samo tehnologija industrija, ampak res 76 00:04:13,010 --> 00:04:16,490 vsaka industrija that-- ker Veliko industrij 77 00:04:16,490 --> 00:04:20,589 so nekakšna temeljnega pomena za poskušajo rešiti te probleme. 78 00:04:20,589 --> 00:04:24,590 In ponavadi, imate lahko nekaj dobrega način merjenja teh problemov 79 00:04:24,590 --> 00:04:29,720 ali jih celo določanju ali njihovo reševanje z uporabo podatkov. 80 00:04:29,720 --> 00:04:35,430 Zato mislim, da prav zdaj R 11 najbolj priljubljen jezik na TIOBE 81 00:04:35,430 --> 00:04:38,200 in to je bila vedno od takrat. 82 00:04:38,200 --> 00:04:40,740 83 00:04:40,740 --> 00:04:43,080 >> Torej, tukaj je nekaj več lastnosti R. ima 84 00:04:43,080 --> 00:04:46,900 ogromno število paketov in Za vse te različne stvari. 85 00:04:46,900 --> 00:04:52,470 Torej, kadarkoli imate določenega problema, najbolj 86 00:04:52,470 --> 00:04:55,060 Čas R bo imel da je funkcija za vas. 87 00:04:55,060 --> 00:04:58,520 Torej, ali želite zgraditi neke vrste stroja 88 00:04:58,520 --> 00:05:02,770 učenje algoritem imenovan Random Forest ali Odločitvena drevesa, 89 00:05:02,770 --> 00:05:07,530 ali celo poskušal vzeti povprečje funkcija ali te stvari, 90 00:05:07,530 --> 00:05:10,000 R bo imel to. 91 00:05:10,000 --> 00:05:14,190 >> In če se vam je mar optimizacija, ena stvar, ki je skupna 92 00:05:14,190 --> 00:05:17,430 je, da se po končaš prototipov nekakšna jezika na visoki ravni, 93 00:05:17,430 --> 00:05:19,810 vas bo vrgel da in-- boste samo pristanišče, da več kot 94 00:05:19,810 --> 00:05:21,550 do jezika neki nizki ravni. 95 00:05:21,550 --> 00:05:26,090 Kaj je dobro o R je, da ko ste storjeno je prototipiranje, lahko zaženete C ++, 96 00:05:26,090 --> 00:05:29,510 ali Fortran, ali karkoli od naštetega nižjih ravni neposredno v R. 97 00:05:29,510 --> 00:05:32,320 Tako da je ena res kul značilnost o R, 98 00:05:32,320 --> 00:05:35,930 če si res skrbi točka optimizacija. 99 00:05:35,930 --> 00:05:39,490 >> In to je tudi res dobra za spletne vizualizacij. 100 00:05:39,490 --> 00:05:43,530 Torej D3.js, na primer, je Mislim, da še en seminar 101 00:05:43,530 --> 00:05:45,130 ki smo ga predstavili danes. 102 00:05:45,130 --> 00:05:48,510 In to je res super za početje interaktivne vizualizacije. 103 00:05:48,510 --> 00:05:54,460 In D3.js predpostavlja, da imate neke vrste podatkov, ki jih je treba izrisati 104 00:05:54,460 --> 00:05:58,080 in R je odličen način, da lahko naredi analiza podatkov, preden ga izvoziti 105 00:05:58,080 --> 00:06:04,220 prenesejo D3.js ali celo samo teči D3.js ukazov v R sama, 106 00:06:04,220 --> 00:06:08,240 kot tudi vse te druge knjižnice, kot dobro. 107 00:06:08,240 --> 00:06:13,041 >> Tako da je bil samo uvedba kaj je R in zakaj bi ga lahko uporabljate. 108 00:06:13,041 --> 00:06:14,790 Torej, upam, da sem imel Vam je prepričan, kaj 109 00:06:14,790 --> 00:06:18,460 o samo poskušam, da vidim kaj je to všeč. 110 00:06:18,460 --> 00:06:23,930 Tako da sem šel naprej in iti skozi nekaj osnov o R predmetov 111 00:06:23,930 --> 00:06:26,150 in kaj si lahko res. 112 00:06:26,150 --> 00:06:29,690 >> Torej, tukaj je samo kup matematičnih ukazov. 113 00:06:29,690 --> 00:06:35,000 Tako pravijo you're-- želite zgraditi Jezik sami in si želite 114 00:06:35,000 --> 00:06:38,080 da imajo kup različnih orodij. 115 00:06:38,080 --> 00:06:42,520 Kakršnih koli operacije mislite, da bi želijo se precej dogaja, da se v R. 116 00:06:42,520 --> 00:06:44,150 >> Torej, tukaj je 2 plus 2. 117 00:06:44,150 --> 00:06:46,090 Tukaj je 2-krat pi. 118 00:06:46,090 --> 00:06:51,870 R ima kup vgrajenih konstant da boste pogosto uporabljate, kot pi, e. 119 00:06:51,870 --> 00:06:56,230 >> In potem, tukaj je 7 plus runif, tako runif od 1. 120 00:06:56,230 --> 00:07:02,450 To je funkcija, ki je ustvarja eno naključno enotna od 0 do 1. 121 00:07:02,450 --> 00:07:04,400 In potem je tukaj še 3 z močjo 4. 122 00:07:04,400 --> 00:07:06,430 Tam kvadratni korenine. 123 00:07:06,430 --> 00:07:07,270 >> Tam je dnevnik. 124 00:07:07,270 --> 00:07:14,500 Torej, prijavite se bo naredil bazo Eksponentna sama. 125 00:07:14,500 --> 00:07:18,337 In potem, če ste določili osnovo, potem lahko narediš karkoli baza hočeš. 126 00:07:18,337 --> 00:07:19,920 In potem je tukaj nekaj drugih ukazov. 127 00:07:19,920 --> 00:07:22,180 Torej, imate 23 mod 2. 128 00:07:22,180 --> 00:07:24,910 Potem imate preostanek. 129 00:07:24,910 --> 00:07:27,110 Potem imate znanstveno Zapis, če vas prav 130 00:07:27,110 --> 00:07:34,060 želeli narediti več in prav bolj zapletene stvari. 131 00:07:34,060 --> 00:07:37,320 >> Torej, tukaj je naloga. 132 00:07:37,320 --> 00:07:40,830 Tako tipične naloge v R se opravi s puščico 133 00:07:40,830 --> 00:07:43,440 tako da je manj kot nato vezajem. 134 00:07:43,440 --> 00:07:47,250 Torej, tukaj sem samo dodeljevanje 3 spremenljivki val. 135 00:07:47,250 --> 00:07:50,160 >> In potem sem tiskanje val in potem se natisne tri. 136 00:07:50,160 --> 00:07:53,920 Privzeto v R tolmača, ga bo izpisal stvari za vas 137 00:07:53,920 --> 00:07:57,280 tako da vam ne bi bilo treba navesti natisniti val kadarkoli želite natisniti nekaj. 138 00:07:57,280 --> 00:08:00,200 Lahko pač val in potem bo to naredil za vas. 139 00:08:00,200 --> 00:08:04,380 >> Prav tako lahko uporabite je enaka tehnično kot operater odstop. 140 00:08:04,380 --> 00:08:07,190 Obstaja malo razlik, med uporabo puščico 141 00:08:07,190 --> 00:08:10,730 Operater in Rezultat Operater za naloge. 142 00:08:10,730 --> 00:08:15,470 Večinoma po dogovoru vsakogar bo samo uporabo operaterju puščico. 143 00:08:15,470 --> 00:08:21,850 >> In tukaj, sem dodeljevanje te poševni zapis se imenuje 1 črevo 6. 144 00:08:21,850 --> 00:08:26,010 To ustvari vektor od 1 do 6. 145 00:08:26,010 --> 00:08:29,350 In to je res lepo, ker potem ki ste jo pravkar dodeliti vektor Val 146 00:08:29,350 --> 00:08:34,270 in da deluje sama po sebi. 147 00:08:34,270 --> 00:08:37,799 >> Torej, to se že dogaja od single-- zelo intuitiven podatkov 148 00:08:37,799 --> 00:08:41,070 Struktura samo enkrat toliko kot leta nekatere vrste tipa v vektor 149 00:08:41,070 --> 00:08:45,670 in ki bo zbiral vse skalarni vrednosti za vas. 150 00:08:45,670 --> 00:08:50,770 Torej, ko gredo iz skalarne, si imajo R objektov in to je vektor. 151 00:08:50,770 --> 00:08:55,610 Vektor je vsaka vrsta Zbiranje istega tipa. 152 00:08:55,610 --> 00:08:58,150 Torej, tukaj je kup vektorjev. 153 00:08:58,150 --> 00:08:59,800 >> Torej, to je številčna. 154 00:08:59,800 --> 00:09:02,440 Numerična je način r je rekel dvojno. 155 00:09:02,440 --> 00:09:07,390 In tako ga privzeto, vsaka Številka bo dvojno. 156 00:09:07,390 --> 00:09:13,150 >> Torej, če imate c od 1,1, 3, negativna 5.7, c je funkcija. 157 00:09:13,150 --> 00:09:16,760 To use vse tri številke v vektor. 158 00:09:16,760 --> 00:09:19,619 In to tako, če be-- opazite 3 po sebi, 159 00:09:19,619 --> 00:09:21,910 normalno bi si domnevati, da je ta kot celo število, 160 00:09:21,910 --> 00:09:25,050 ampak zato, ker so vsi vektorji so enakega tipa, 161 00:09:25,050 --> 00:09:28,660 To je vektor dvojic ali številska v tem primeru. 162 00:09:28,660 --> 00:09:34,920 >> rnorm je funkcija, ki ustvarja standardna normalna variables-- 163 00:09:34,920 --> 00:09:36,700 ali standardne normalne vrednosti. 164 00:09:36,700 --> 00:09:38,360 In jaz sem z navedbo dva izmed njih. 165 00:09:38,360 --> 00:09:43,840 Torej delam rnorm 2, dodeljevanje da devs, nato pa sem tiskanje devs. 166 00:09:43,840 --> 00:09:47,350 Torej, to sta le dva naključne normalne vrednosti. 167 00:09:47,350 --> 00:09:50,060 >> In potem ints, če vam vas skrbi cela. 168 00:09:50,060 --> 00:09:54,650 Torej, to je samo o spominu dodeljevanje in varčevanje velikost pomnilnika. 169 00:09:54,650 --> 00:10:01,460 Torej bi morali priložiti vaše številke po kapitalu L. 170 00:10:01,460 --> 00:10:04,170 >> Na splošno, to je Zgodovinski zapis r je 171 00:10:04,170 --> 00:10:06,940 za nekaj, kar se imenuje dolgo celo število. 172 00:10:06,940 --> 00:10:09,880 Torej, večino časa boste se ukvarjajo z dvojic. 173 00:10:09,880 --> 00:10:15,180 In če si kdaj bo kasneje za optimizacijo kode, 174 00:10:15,180 --> 00:10:18,110 lahko le dodamo ti L's kasneje ali med njim 175 00:10:18,110 --> 00:10:22,280 Če ste kot precognitive o tem, kaj boš naredil teh spremenljivk. 176 00:10:22,280 --> 00:10:25,340 177 00:10:25,340 --> 00:10:26,890 >> Torej, tukaj je vektor znak. 178 00:10:26,890 --> 00:10:31,440 Torej, še enkrat, jaz sem concatenating trije nizi tokrat. 179 00:10:31,440 --> 00:10:36,230 Obvestilo, da dvojne strune in posamezni nizi so enake v R. 180 00:10:36,230 --> 00:10:41,000 Torej imam Artur in marvin je in tako ko sem jo tiskanje, vse od njih 181 00:10:41,000 --> 00:10:43,210 se dogaja, da pokažejo dvojne strune. 182 00:10:43,210 --> 00:10:45,880 In če želite vključiti tudi dvojni ali enojni niz 183 00:10:45,880 --> 00:10:50,070 v svoje like, potem lahko bodisi izmenično svoje strune. 184 00:10:50,070 --> 00:10:53,540 >> Torej, marvin je za drugi element, to je 185 00:10:53,540 --> 00:10:56,380 vas bo show-- samo še dvojne strune 186 00:10:56,380 --> 00:10:59,050 in nato en sam niz tako da je ta izmenično. 187 00:10:59,050 --> 00:11:04,040 V nasprotnem primeru, če želite uporabljati dvojni Niz operater v dvojni niz 188 00:11:04,040 --> 00:11:07,090 če ste jo, potem samo uporabite operaterja pobeg. 189 00:11:07,090 --> 00:11:10,600 Torej vam Nagibnica dvojni niz. 190 00:11:10,600 --> 00:11:13,330 >> In na koncu, smo tudi imajo logične vektorjev. 191 00:11:13,330 --> 00:11:15,890 Torej logical-- tako TRUE in FALSE, in oni 192 00:11:15,890 --> 00:11:18,880 dogaja, da so vse velike tiskane črke. 193 00:11:18,880 --> 00:11:22,370 In potem še enkrat, jaz sem concatenating jim in jih nato dodelite do bools. 194 00:11:22,370 --> 00:11:24,590 Torej bools se dogaja, da pokažejo si TRUE, FALSE in TRUE. 195 00:11:24,590 --> 00:11:28,280 196 00:11:28,280 --> 00:11:31,620 >> Torej, tukaj je vektorske indeksiranje. 197 00:11:31,620 --> 00:11:34,870 Torej, v začetku sem sem ob a function-- 198 00:11:34,870 --> 00:11:39,230 To se imenuje sequence-- sekvenca od 2 do 12. 199 00:11:39,230 --> 00:11:42,490 In jaz sem ob zaporedje z 2. 200 00:11:42,490 --> 00:11:46,660 Tako se dogaja, da storijo 2, 4, 6, 8, 10 in 12. 201 00:11:46,660 --> 00:11:50,080 In potem sem indeksiranje da bi dobili tretji element. 202 00:11:50,080 --> 00:11:55,770 >> Torej, ena stvar, da v mislih je, da so indeksi R z začetkom od 1.. 203 00:11:55,770 --> 00:12:00,550 Torej Vals 3 se dogaja, da vam tretji element. 204 00:12:00,550 --> 00:12:04,580 To je vrsta razlikuje od drugih jezikov, kjer se začne iz ničle. 205 00:12:04,580 --> 00:12:09,780 Torej, v C ali C ++, na primer, da ste bo dobil četrti element. 206 00:12:09,780 --> 00:12:13,280 >> In tukaj je vals od 3. do 5.. 207 00:12:13,280 --> 00:12:16,030 Torej, ena stvar, ki je res kul je, da vas 208 00:12:16,030 --> 00:12:20,410 lahko ustvarjajo začasne spremenljivke v notranjosti in potem samo jih uporabiti na letenje. 209 00:12:20,410 --> 00:12:21,960 Torej, tukaj je 3 do 5. 210 00:12:21,960 --> 00:12:25,070 Tako da sem generiranje vektorja 3, 4 in 5 ter nato 211 00:12:25,070 --> 00:12:29,700 Jaz sem indeksiranje, da bi dobili tretjino, četrti in peti elementi. 212 00:12:29,700 --> 00:12:32,280 >> Torej podobno, lahko abstraktna to pač 213 00:12:32,280 --> 00:12:35,280 kakršno koli vektorja ki vam omogoča indeksiranje. 214 00:12:35,280 --> 00:12:40,050 Torej, tukaj je Vals in nato prvi, tretji in šesti elementi. 215 00:12:40,050 --> 00:12:42,800 In potem, če hočeš narediti dopolnilo, 216 00:12:42,800 --> 00:12:45,210 da si naredil minus nato, da bom 217 00:12:45,210 --> 00:12:48,600 vam vse, kar ni prva, tretja ali šesti element. 218 00:12:48,600 --> 00:12:51,590 Torej bo to 4, 8 in 10. 219 00:12:51,590 --> 00:12:54,380 >> In če želite, da bi dobili še bolj napredno, 220 00:12:54,380 --> 00:12:57,610 lahko sestavite logičnih vektorjev. 221 00:12:57,610 --> 00:13:05,210 Tako da je ta indeks se dogaja, da vam ta logični vektor dolžine 6. 222 00:13:05,210 --> 00:13:07,280 Torej rep TRUE vejica 3. 223 00:13:07,280 --> 00:13:09,680 To bo ponovil PRAVILNO trikrat. 224 00:13:09,680 --> 00:13:12,900 Torej, to Da vam bo dal vektor TRUE, TRUE, TRUE. 225 00:13:12,900 --> 00:13:17,470 >> rep FALSE 4-- to se dogaja, da vam vektor FALSE, FALSE, FALSE, FALSE. 226 00:13:17,470 --> 00:13:21,280 In potem c se bo združevanje ti dve Booleans skupaj. 227 00:13:21,280 --> 00:13:24,090 Tako boste dobili tri TRUEs in nato štiri FALSEs. 228 00:13:24,090 --> 00:13:28,460 >> Tako da, ko indeks vals, ste bo dobil TRUE, TRUE, TRUE. 229 00:13:28,460 --> 00:13:31,420 Tako, da se dogaja, da pravijo, da, Hočem te tri elemente. 230 00:13:31,420 --> 00:13:33,520 In potem FALSE, FALSE, FALSE, FALSE se dogaja 231 00:13:33,520 --> 00:13:37,140 reči ne, nočem tiste elemente tako da ne gre za njihovo vrnitev. 232 00:13:37,140 --> 00:13:41,490 >> In mislim, da je dejansko slovnične tukaj ker je to rekel, ponovite TRUE 3 233 00:13:41,490 --> 00:13:47,990 in ponovite FALSE 4, in tehnično vas imajo le šest elementov, tako da ponovite FALSE, 234 00:13:47,990 --> 00:13:50,470 bi moralo biti ponovite FALSE 3. 235 00:13:50,470 --> 00:13:55,260 Mislim, R je tudi dovolj pameten, kot da če si določite 4 tukaj, potem 236 00:13:55,260 --> 00:13:56,630 da ne bo niti napak ven. 237 00:13:56,630 --> 00:13:58,480 To vam bo samo dal to vrednost. 238 00:13:58,480 --> 00:14:00,970 Tako da bom šele prezreti, da je četrto FALSE. 239 00:14:00,970 --> 00:14:05,310 240 00:14:05,310 --> 00:14:09,270 >> Torej, tukaj je vektorske naloga. 241 00:14:09,270 --> 00:14:15,480 Torej set.seed-- to samo določa Seme za številke pseudoslučajnih. 242 00:14:15,480 --> 00:14:20,110 Tako da sem nastavitev seme 42, kar pomeni, da če sem ustvarila 243 00:14:20,110 --> 00:14:22,950 tri naključno normalno vrednosti, in potem, če vas 244 00:14:22,950 --> 00:14:27,400 pognani set.seed sami Računalnik z uporabo iste vrednosti 42, 245 00:14:27,400 --> 00:14:30,990 potem boste tudi dobili iste tri naključne normale. 246 00:14:30,990 --> 00:14:33,411 >> Torej, to je res dobra za obnovljivost. 247 00:14:33,411 --> 00:14:35,910 Ponavadi, ko delaš nekaj nekako znanstvene analize, 248 00:14:35,910 --> 00:14:37,230 bi si želeli, da nastavite seme. 249 00:14:37,230 --> 00:14:41,270 Tako drugi znanstveniki lahko samo reproducirati točno isto kodo, ki ste jo 250 00:14:41,270 --> 00:14:44,790 storiti, ker oni imajo točen Isti slučajne spremenljivke that-- ali naključno 251 00:14:44,790 --> 00:14:47,270 vrednosti, ki ste sprejeti kot dobro. 252 00:14:47,270 --> 00:14:49,870 253 00:14:49,870 --> 00:14:53,910 >> In tako vektorske odstop Tukaj se kaže Vals z 1 in 2. 254 00:14:53,910 --> 00:14:59,290 Torej je potrebno v prvih dveh elementov od Vals in jih nato prenese na 0. 255 00:14:59,290 --> 00:15:03,940 In potem si lahko samo naredi tudi podobna stvar z Booleans. 256 00:15:03,940 --> 00:15:09,340 >> Torej Vals ni enaka 0-- bo to vam vektorski FALSE, FALSE, TRUE 257 00:15:09,340 --> 00:15:10,350 v tem primeru. 258 00:15:10,350 --> 00:15:13,770 In potem, da se dogaja, bi rekla od teh indeksov, ki so TRUE, 259 00:15:13,770 --> 00:15:15,270 potem se dogaja, da določite, da do 5. 260 00:15:15,270 --> 00:15:18,790 Torej je potrebno, tretji element Tu in nato dodeli 5. 261 00:15:18,790 --> 00:15:22,300 >> In to je res lepo v primerjavi z jeziki na nizki ravni 262 00:15:22,300 --> 00:15:25,560 kjer boste morali uporabiti za zanke storiti vse te vektorske stvari 263 00:15:25,560 --> 00:15:30,281 saj to je samo zelo intuitiven in to je enkratno-liner. 264 00:15:30,281 --> 00:15:32,030 In kaj je velik približno vektorske zapis 265 00:15:32,030 --> 00:15:37,020 je, da so to v R vrsta vgrajeni tako, da so si skoraj tako hitro 266 00:15:37,020 --> 00:15:42,490 početje v jeziku nizki ravni, kot v nasprotju z izdelavo zanke v raziskave 267 00:15:42,490 --> 00:15:46,317 in potem ko ga narediti dinamično indeksiranje sama. 268 00:15:46,317 --> 00:15:48,900 In da bo počasnejša kot delaš tovrstna vektorske stvar 269 00:15:48,900 --> 00:15:55,950 če je lahko to storite vzporedno, kadar da to počne v bistvu navojev. 270 00:15:55,950 --> 00:15:58,650 >> Torej, tukaj je vektorske operacije. 271 00:15:58,650 --> 00:16:04,920 Zato sem tvorjenje vrednosti od 1 do 3, dodeljevanje da vec1, 3 do 5, vec2, 272 00:16:04,920 --> 00:16:05,950 jih dodate skupaj. 273 00:16:05,950 --> 00:16:11,490 To jim dodaja sestavnega pametno tako to je 1 plus 3, 2 plus 4, in tako naprej. 274 00:16:11,490 --> 00:16:13,330 >> vec1 krat vec2. 275 00:16:13,330 --> 00:16:16,110 To množi dva Vrednosti komponento pametno. 276 00:16:16,110 --> 00:16:21,830 Torej, to je 1 krat 3, 2-krat 4, nato pa 3-krat 5. 277 00:16:21,830 --> 00:16:28,250 >> In potem, podobno lahko storite tudi comparisons-- logične primerjave. 278 00:16:28,250 --> 00:16:33,640 Torej, to je false false TRUE v tem Primer ker 1 ni večja od 3, 279 00:16:33,640 --> 00:16:35,920 2 ni večja od 4. 280 00:16:35,920 --> 00:16:41,160 To je, mislim, še slovnične napake, 3 definitivno ni večja od 5. 281 00:16:41,160 --> 00:16:41,660 Ja. 282 00:16:41,660 --> 00:16:45,770 In tako lahko samo naredil vse Te enostavne operacije 283 00:16:45,770 --> 00:16:48,350 ker je njihova dedna iz razredov samih. 284 00:16:48,350 --> 00:16:51,110 285 00:16:51,110 --> 00:16:52,580 >> Tako da je bil samo vektor. 286 00:16:52,580 --> 00:16:56,530 In to je nekako najbolj temeljna R objekt, saj dana vektorja, 287 00:16:56,530 --> 00:16:59,170 lahko zgraditi bolj naprednih predmetov. 288 00:16:59,170 --> 00:17:00,560 >> Torej, tukaj je matrica. 289 00:17:00,560 --> 00:17:05,030 To je v bistvu abstrakcija kaj matrica je sama. 290 00:17:05,030 --> 00:17:10,099 Torej, v tem primeru, to je tri različne vektorji, kjer je vsak stolpec, 291 00:17:10,099 --> 00:17:12,710 ali pa menijo, da je kot vsak je vrstica. 292 00:17:12,710 --> 00:17:18,250 >> Tako da sem shranjevanje matriko od 1 do 9, nato pa sem podrobno 3 vrstic. 293 00:17:18,250 --> 00:17:23,364 Torej 1 do 9 vam vektorja 1, 2, 3, 4, 5, 6, in vse do 9. 294 00:17:23,364 --> 00:17:29,250 >> Ena stvar, ki vodijo tudi v mislih je, da R shranjuje vrednosti v stolpcu, velik format. 295 00:17:29,250 --> 00:17:34,160 Torej, z drugimi besedami, ko vidiš 1 do 9, da se dogaja, da shranite them-- 296 00:17:34,160 --> 00:17:36,370 to se dogaja, da je 1, 2, 3 v prvem stolpcu, 297 00:17:36,370 --> 00:17:38,510 in potem bom to 4, 5, 6 v drugem stolpcu 298 00:17:38,510 --> 00:17:41,440 in nato 7, 8, 9 v tretjem stolpcu. 299 00:17:41,440 --> 00:17:45,570 >> In tukaj je nekaj drugega skupne funkcije, ki jih lahko uporabite. 300 00:17:45,570 --> 00:17:49,650 Torej dim mat, to vam bo dala dimenzije matrike. 301 00:17:49,650 --> 00:17:52,620 To se dogaja, da vam vrnejo vektor dimenzije. 302 00:17:52,620 --> 00:17:55,580 Torej v tem primeru, ker Naša matrika 3 s 3, 303 00:17:55,580 --> 00:18:01,900 to se dogaja, da vam Številčna vektor, ki je 3 3. 304 00:18:01,900 --> 00:18:05,270 >> In tukaj je samo kaže matriko množenje. 305 00:18:05,270 --> 00:18:11,970 Torej ponavadi, če si naredil asterisk-- tako mat zvezdica mat-- 306 00:18:11,970 --> 00:18:15,380 To se bo delovanje sestavnega pametno 307 00:18:15,380 --> 00:18:17,300 ali kaj se imenuje izdelek Hadamardov. 308 00:18:17,300 --> 00:18:21,310 Tako se dogaja, da naredi vsak sestavnega dela pametno. 309 00:18:21,310 --> 00:18:23,610 Vendar, če hočeš Matrika multiplication-- 310 00:18:23,610 --> 00:18:29,380 tako, da se pomnoži prve čase vrstic prvi stolpec druge matrike je 311 00:18:29,380 --> 00:18:34,510 in tako on-- bi jih uporabili To odstotkov operacija. 312 00:18:34,510 --> 00:18:38,110 >> In t mat je le Delovanje za transponiranjem. 313 00:18:38,110 --> 00:18:42,590 Torej, jaz pravim da je prenesla v matrika, pomnoži z matrico 314 00:18:42,590 --> 00:18:43,090 sama. 315 00:18:43,090 --> 00:18:45,006 In potem se dogaja, da vrnitev na vas še 3 316 00:18:45,006 --> 00:18:50,700 za 3 matrika, ki prikazuje izdelek, ki ste jo želeli. 317 00:18:50,700 --> 00:18:53,750 >> In tako, da je matrika. 318 00:18:53,750 --> 00:18:56,020 Tukaj je tisto, kar se imenuje podatkovni niz. 319 00:18:56,020 --> 00:19:00,780 Podatki frame si lahko zamislite kot matrika, vendar vsak stolpec sam 320 00:19:00,780 --> 00:19:02,990 se bo drugačnega tipa. 321 00:19:02,990 --> 00:19:07,320 >> Torej, kaj je res kul o podatkih Okviri je, da pri analizi podatkov samem, 322 00:19:07,320 --> 00:19:11,260 boste imeli vse to heterogenih podatkov in vse to res 323 00:19:11,260 --> 00:19:15,640 umazane stvari, kjer je vsak izmed stolpcev sami lahko različnih tipov. 324 00:19:15,640 --> 00:19:21,460 Torej, tukaj govorim ustvariti podatkovni niz, narediti ints 1 do 3, 325 00:19:21,460 --> 00:19:24,750 in nato tudi vektor znakov. 326 00:19:24,750 --> 00:19:28,470 Tako sem lahko indeks prek vsak od teh stebrov 327 00:19:28,470 --> 00:19:30,930 in potem bom dobil vrednote same. 328 00:19:30,930 --> 00:19:34,370 In lahko storite tudi neke vrste poslovanja na podatkovnih okvirjev. 329 00:19:34,370 --> 00:19:38,040 In večino časa, ko ste delaš analizo podatkov ali neko 330 00:19:38,040 --> 00:19:42,042 za predobdelavo, boste delajo s temi podatkovnimi strukturami 331 00:19:42,042 --> 00:19:44,250 kjer vsak stolpec se dogaja da so različnega tipa. 332 00:19:44,250 --> 00:19:47,880 333 00:19:47,880 --> 00:19:52,970 >> Končno, tako da so ti v bistvu samo štiri bistvene stvari v R. Seznam 334 00:19:52,970 --> 00:19:55,820 bo samo zbiranje vseh drugi predmeti, ki jih želite. 335 00:19:55,820 --> 00:20:00,130 Tako da bo to shraniti v eno spremenljivka, ki jo lahko enostavno dostopate. 336 00:20:00,130 --> 00:20:02,370 >> Torej, tukaj, sem ob seznama. 337 00:20:02,370 --> 00:20:04,460 Pravim stvari enak 3. 338 00:20:04,460 --> 00:20:08,060 Torej grem na en element seznam, in to se imenuje stvari, 339 00:20:08,060 --> 00:20:10,570 in to se dogaja, da ima vrednost 3. 340 00:20:10,570 --> 00:20:13,140 >> Lahko tudi ustvarite matriko. 341 00:20:13,140 --> 00:20:17,970 Torej, to je od 1 do 4 in končno zapored enak 2, tako da 2 z 2 matrici. 342 00:20:17,970 --> 00:20:20,270 Tudi na seznamu, in to se imenuje mat. 343 00:20:20,270 --> 00:20:24,690 moreStuff, niz znakov, in še en seznam v sebi. 344 00:20:24,690 --> 00:20:27,710 >> Torej, to je seznam, ki je 5 in medveda. 345 00:20:27,710 --> 00:20:30,990 Tako da ima vrednost 5 in jo je niz znakov medveda 346 00:20:30,990 --> 00:20:32,710 in to je seznam znotraj seznama. 347 00:20:32,710 --> 00:20:35,965 Tako da lahko imajo ti rekurzivne stvari, kjer 348 00:20:35,965 --> 00:20:38,230 imate another-- a tip v vrsto. 349 00:20:38,230 --> 00:20:41,420 Torej podobno, lahko imate matriko znotraj druge matrice in tako naprej. 350 00:20:41,420 --> 00:20:44,264 In seznam je samo dober način zbiranje in združevanje 351 00:20:44,264 --> 00:20:45,430 vsi ti različni predmeti. 352 00:20:45,430 --> 00:20:50,210 353 00:20:50,210 --> 00:20:57,150 >> In končno, tu pomaga le v primeru, To je bil samo zelo hitro šli čez. 354 00:20:57,150 --> 00:21:01,350 Torej, kadarkoli ste zmedeni o nekakšnem funkcije, 355 00:21:01,350 --> 00:21:03,510 lahko storite pomočjo te funkcije. 356 00:21:03,510 --> 00:21:07,120 Torej lahko storite pomoč matrico ali matrica vprašaj. 357 00:21:07,120 --> 00:21:11,430 In pomoč ter vprašaj, so samo okrajšava za isto stvar 358 00:21:11,430 --> 00:21:13,040 tako da si vzdevke. 359 00:21:13,040 --> 00:21:16,820 >> md je funkcija, ki Samo ne linearnemu. 360 00:21:16,820 --> 00:21:20,340 Ampak, če ste jo pravkar nimajo pojma, kako da Dela, ki jih lahko preprosto storite pomoč lm 361 00:21:20,340 --> 00:21:24,610 in da vam bom dal nekaj Vrsta dokumentacije, ki 362 00:21:24,610 --> 00:21:27,960 izgleda nekako kot Človek stran v Unix, kjer 363 00:21:27,960 --> 00:21:34,210 imate kratek opis, kaj to počne tudi, kakšni so njeni argumenti so, 364 00:21:34,210 --> 00:21:38,850 kaj se vrne, in le nekaj nasvetov o tem, kako da jo uporabljajo, in nekaj primerov, kot dobro. 365 00:21:38,850 --> 00:21:41,680 366 00:21:41,680 --> 00:21:52,890 >> Zato mi dovolite, iti naprej in pokazati nekaj demo z uporabo R. OK. 367 00:21:52,890 --> 00:21:55,470 Zato sem šel na zelo hitro samo podatki 368 00:21:55,470 --> 00:21:59,440 strukture in nekakšna op-- nekaj operacij. 369 00:21:59,440 --> 00:22:02,960 Tukaj je nekaj funkcij. 370 00:22:02,960 --> 00:22:06,750 >> Torej, tukaj sem le, da bo opredeliti funkcijo. 371 00:22:06,750 --> 00:22:09,970 Tako da sem tudi z uporabo Razporeditev operater tukaj 372 00:22:09,970 --> 00:22:12,610 in potem sem rekel jo razglasi kot funkcija. 373 00:22:12,610 --> 00:22:14,140 In to se je vrednost x. 374 00:22:14,140 --> 00:22:18,210 Torej, to je vsaka vrednost, ki jo želite in bom vrnil x sebi. 375 00:22:18,210 --> 00:22:20,840 Torej je to funkcija identitete. 376 00:22:20,840 --> 00:22:23,670 >> In kaj je kul o tem v primerjavi z drugimi jeziki 377 00:22:23,670 --> 00:22:26,330 in druga nizko raven jezikov, da x 378 00:22:26,330 --> 00:22:29,350 lahko katerega koli tipa, same in da bomo vrnili to vrsto. 379 00:22:29,350 --> 00:22:35,251 Torej imagine-- lahko to dovolite me samo teči to hitro. 380 00:22:35,251 --> 00:22:35,750 Žal mi je. 381 00:22:35,750 --> 00:22:40,300 >> Torej, ena stvar, ki sem omeniti tudi je, da je ta urednik sem s pomočjo 382 00:22:40,300 --> 00:22:41,380 se imenuje rstudio. 383 00:22:41,380 --> 00:22:44,389 To je tisto, kar se imenuje IDE. 384 00:22:44,389 --> 00:22:46,180 In še ena stvar, ki je res lepo o tem 385 00:22:46,180 --> 00:22:51,500 je, da vsebuje veliko stvari, ki jih želim narediti na področju raziskav, ki jih sama 386 00:22:51,500 --> 00:22:53,180 samo zelo intuitivno. 387 00:22:53,180 --> 00:22:55,550 >> Torej, tukaj je tolmač konzola. 388 00:22:55,550 --> 00:23:02,160 Torej podobno, lahko dobite tudi to konzola surovega samo s tem kapitalsko R. 389 00:23:02,160 --> 00:23:05,630 In to je točno Isto kot konzole. 390 00:23:05,630 --> 00:23:12,210 Torej, lahko sem samo naredil id funkcijo x, x, x. 391 00:23:12,210 --> 00:23:16,130 In then-- in nato, da bo v redu sam. 392 00:23:16,130 --> 00:23:19,200 393 00:23:19,200 --> 00:23:21,740 >> Torej rstudio je super ker ima konzolo. 394 00:23:21,740 --> 00:23:25,360 Prav tako ima dokumente bi radi, da deluje na. 395 00:23:25,360 --> 00:23:28,629 In potem je nekaj spremenljivk da si lahko ogledate v okoljih. 396 00:23:28,629 --> 00:23:30,420 In potem, če imate storiti parcel, potem vam 397 00:23:30,420 --> 00:23:33,730 Samo lahko videli tukaj, v primerjavi s upravljanje vseh teh različnih oken 398 00:23:33,730 --> 00:23:35,940 sami. 399 00:23:35,940 --> 00:23:40,530 >> Pravzaprav sem osebno uporabo Vim, vendar sem Počutim se, kot rstudio je odlična prav 400 00:23:40,530 --> 00:23:44,640 za pridobivanje dobro idejo kako uporabiti R. Običajno 401 00:23:44,640 --> 00:23:47,040 ko poskušate se naučijo nekaj novega nalogo, 402 00:23:47,040 --> 00:23:49,590 ne želite, da se ročaj preveč stvari naenkrat. 403 00:23:49,590 --> 00:23:53,120 Torej R je samo very-- rstudio je zelo dober način učenja R 404 00:23:53,120 --> 00:23:56,760 ne da bi se morali ukvarjati s vse te druge stvari. 405 00:23:56,760 --> 00:23:58,600 >> Torej, tukaj tečem id zdravo. 406 00:23:58,600 --> 00:24:00,090 To vrne zdravo. 407 00:24:00,090 --> 00:24:01,740 id 123. 408 00:24:01,740 --> 00:24:04,610 Tukaj je vektor števil. 409 00:24:04,610 --> 00:24:08,620 Torej podobno, saj lahko sprejme vse neko vrednost, 410 00:24:08,620 --> 00:24:16,060 lahko storite vračajo id x da se vrne 1234 in 5. 411 00:24:16,060 --> 00:24:22,210 >> In naj me samo ti kažejo, da To je dejansko število. 412 00:24:22,210 --> 00:24:28,800 In podobno, če vam razred id x, da se dogaja, da se bo število. 413 00:24:28,800 --> 00:24:34,170 In potem, lahko tudi vi primerjati dva in to je res. 414 00:24:34,170 --> 00:24:38,350 Tako da sem preverjanje, če id x enaka enaka x in obvestila 415 00:24:38,350 --> 00:24:39,760 ki vam daje dve TRUEs. 416 00:24:39,760 --> 00:24:44,280 Tako da to ni rekel, so dve predmeti enaki, 417 00:24:44,280 --> 00:24:46,845 vendar vsak od vstopov v vektorji identični. 418 00:24:46,845 --> 00:24:50,000 419 00:24:50,000 --> 00:24:52,090 >> Tukaj je bounded.compare. 420 00:24:52,090 --> 00:24:58,470 Torej, to je nekoliko bolj zapleteno v tem, da ima, če stanje in ostalo 421 00:24:58,470 --> 00:25:00,960 in potem to traja dva argumenti naenkrat. 422 00:25:00,960 --> 00:25:02,640 Torej je x katerekoli vrste. 423 00:25:02,640 --> 00:25:06,280 In jaz sem to rekel Drugi argument je. 424 00:25:06,280 --> 00:25:08,380 To je lahko karkoli, kot dobro. 425 00:25:08,380 --> 00:25:12,490 Vendar privzeto, gre vzeti 5. če ne podate ničesar. 426 00:25:12,490 --> 00:25:16,730 >> Torej, tukaj bom rekel če je x večji od. 427 00:25:16,730 --> 00:25:19,220 Torej, če se jaz ne določajo, da pravi, če je x večji od 5, 428 00:25:19,220 --> 00:25:20,470 potem bom vrnil TRUE. 429 00:25:20,470 --> 00:25:23,230 drugega, bom vrnil FALSE. 430 00:25:23,230 --> 00:25:24,870 Zato mi dovolite, pojdi naprej in določiti to. 431 00:25:24,870 --> 00:25:30,600 432 00:25:30,600 --> 00:25:34,550 >> In zdaj bom teči bounded.compare 3. 433 00:25:34,550 --> 00:25:39,150 Tako pravi je 3 manj than-- 3 večja od 5. 434 00:25:39,150 --> 00:25:41,830 Ne, to ni tako napačen. 435 00:25:41,830 --> 00:25:46,550 >> In bounded.compare 3 in grem za primerjavo uporabi enaka 2. 436 00:25:46,550 --> 00:25:50,700 Torej, zdaj sem rekel ja, zdaj sem želijo biti nekaj drugega. 437 00:25:50,700 --> 00:25:52,750 Tako bom rekel, morate biti 2. 438 00:25:52,750 --> 00:25:56,640 >> Lahko bodisi narediti te vrste Zapis ali rečem enaka 2. 439 00:25:56,640 --> 00:25:58,720 To je bolj berljiva po tem, ko ste 440 00:25:58,720 --> 00:26:01,450 gledaš ti res zapletene funkcije, 441 00:26:01,450 --> 00:26:08,110 sprejme večkratno arguments-- in to lahko na desetine oftentimes-- samo rekel 442 00:26:08,110 --> 00:26:11,140 je enaka 2 je bolj berljiva za ste, da kasneje v prihodnosti 443 00:26:11,140 --> 00:26:13,020 boste vedeli, kaj počnete. 444 00:26:13,020 --> 00:26:17,120 >> Torej, v tem primeru sem rekel je, 3 večje od 2. 445 00:26:17,120 --> 00:26:18,270 Da, je. 446 00:26:18,270 --> 00:26:22,350 In podobno, sem lahko samo odstranite to in pravijo, 3 večje od 2 447 00:26:22,350 --> 00:26:23,440 kjer je enaka 2. 448 00:26:23,440 --> 00:26:26,230 In to je tudi res. 449 00:26:26,230 --> 00:26:26,730 Ja? 450 00:26:26,730 --> 00:26:29,670 >> OBČINSTVO: Ali ste izvrševanje po vrsticah? 451 00:26:29,670 --> 00:26:30,670 >> Dustin TRAN: Da, jaz sem. 452 00:26:30,670 --> 00:26:33,900 Torej, kaj delam tu pri čemer to besedilo document-- 453 00:26:33,900 --> 00:26:39,825 in kaj je velik približno rstudio je, da Jaz lahko samo teči short-- ključno bližnjico. 454 00:26:39,825 --> 00:26:41,820 Torej delam Control-Enter. 455 00:26:41,820 --> 00:26:44,850 >> In potem, sem ob vrstica v dokumentu z besedilom 456 00:26:44,850 --> 00:26:46,710 in nato postavimo v konzoli. 457 00:26:46,710 --> 00:26:50,800 Torej, tukaj sem rekel, bounded.compare in delam Control-X. 458 00:26:50,800 --> 00:26:52,540 Tako da sem lahko samo ne vodijo tudi tukaj. 459 00:26:52,540 --> 00:26:54,920 In potem, da bom linijo in jo dal tukaj. 460 00:26:54,920 --> 00:26:57,900 In potem podobno, lahko pa teče tukaj. 461 00:26:57,900 --> 00:27:04,630 In potem bo to šele obdržati opredeljevanju vrstice v konzoli podobnega. 462 00:27:04,630 --> 00:27:10,690 >> In če boste tudi opazili, kodrasti oporniki so tam tako kot v C sintakso. 463 00:27:10,690 --> 00:27:13,910 x-- če je tudi, če stanje nameravate uporabljati oklepaje in nato 464 00:27:13,910 --> 00:27:15,350 lahko uporabite drugega. 465 00:27:15,350 --> 00:27:17,496 Drug razlog pa je drugje, če. 466 00:27:17,496 --> 00:27:21,440 Torej, to se dogaja, da je x enaka enaka, npr. 467 00:27:21,440 --> 00:27:24,190 468 00:27:24,190 --> 00:27:26,350 In potem bom Nekaj ​​vračali. 469 00:27:26,350 --> 00:27:29,490 >> Obvestilo, da obstajata dve različni Stvari so tukaj, da se dogaja. 470 00:27:29,490 --> 00:27:34,360 Ena je, da tukaj sem podrobno vrne vrednost TRUE. 471 00:27:34,360 --> 00:27:35,950 Tukaj sem samo rekel x. 472 00:27:35,950 --> 00:27:39,970 Torej R ponavadi privzeto vzeti zadnjo arguments-- 473 00:27:39,970 --> 00:27:43,510 ali vzeti zadnjo vrstico kode, in da bo, kar se je vrnil. 474 00:27:43,510 --> 00:27:46,920 Torej, tukaj je to isto stvar, kot počne povratni x. 475 00:27:46,920 --> 00:27:49,450 476 00:27:49,450 --> 00:27:50,540 >> In samo, da ti pokažem. 477 00:27:50,540 --> 00:27:54,000 478 00:27:54,000 --> 00:27:57,052 In potem se bo to delo prav tako. 479 00:27:57,052 --> 00:27:58,260 Torej, kaj me še naprej s tem. 480 00:27:58,260 --> 00:28:00,630 >> Torej, če je ostalo. 481 00:28:00,630 --> 00:28:04,060 In res sem se lahko vrne kaj bi rad. 482 00:28:04,060 --> 00:28:06,680 Tako da nimam niti za povratni Booleans ves čas, 483 00:28:06,680 --> 00:28:08,410 Jaz lahko samo vrnil nekaj drugega. 484 00:28:08,410 --> 00:28:10,670 Tako da sem lahko naredil povratni medveda. 485 00:28:10,670 --> 00:28:12,989 >> Torej, če je x enak enaka, to se dogaja, da se vrnete medveda. 486 00:28:12,989 --> 00:28:14,530 Sicer pa se dogaja, da se vrnete TRUE. 487 00:28:14,530 --> 00:28:19,310 Jaz lahko naredim tudi vektor ali res nič. 488 00:28:19,310 --> 00:28:22,210 >> In ponavadi v mirovanju osnutki, natipkana jeziki, 489 00:28:22,210 --> 00:28:23,840 da bi morali določiti vrsto tukaj. 490 00:28:23,840 --> 00:28:25,750 In ugotovili, da je lahko samo nič. 491 00:28:25,750 --> 00:28:32,400 In R je inteligentna dovolj, da ji bo samo to storiti, in da bo delo v redu. 492 00:28:32,400 --> 00:28:33,620 >> Zato mi dovolite, opredeliti to. 493 00:28:33,620 --> 00:28:39,460 494 00:28:39,460 --> 00:28:41,230 Unexpected-- oh žal. 495 00:28:41,230 --> 00:28:44,336 To bi moralo biti kodrasta brace tukaj. 496 00:28:44,336 --> 00:28:44,836 OK. 497 00:28:44,836 --> 00:28:45,336 Cool. 498 00:28:45,336 --> 00:28:52,580 499 00:28:52,580 --> 00:28:54,530 Vse je v redu. 500 00:28:54,530 --> 00:28:58,250 Torej, zdaj pa jih primerjati med 3 in enak 3. 501 00:28:58,250 --> 00:29:01,860 Tako da bi moral return-- yeah-- medveda vrednosti. 502 00:29:01,860 --> 00:29:06,740 >> Torej, zdaj bolj splošno stvar je všeč Kaj pa druge podatkovne strukture. 503 00:29:06,740 --> 00:29:09,110 Torej imate to funkcijo. 504 00:29:09,110 --> 00:29:15,360 To se dogaja, da delo na kakršno koli vrednosti kot 3 ali kateri koli številčna, 505 00:29:15,360 --> 00:29:17,500 z drugimi besedami, dvojna. 506 00:29:17,500 --> 00:29:19,330 >> Kaj pa nekaj podobnega vektorja. 507 00:29:19,330 --> 00:29:27,750 Torej, kaj se zgodi, če do-- tako da sem dogaja dodeliti Val, recimo, 4 do 6. 508 00:29:27,750 --> 00:29:31,640 Torej, če se vrnem to, to je vektor iz 4, 5, 6. 509 00:29:31,640 --> 00:29:34,935 >> Zdaj pa poglejmo, kaj se zgodi če naredim bounded.compare val. 510 00:29:34,935 --> 00:29:37,680 511 00:29:37,680 --> 00:29:42,450 Torej, to se dogaja, da vam 15 1251. 512 00:29:42,450 --> 00:29:46,440 Torej, z drugimi besedami, to je rekel če pogledaš na ta pogoj 513 00:29:46,440 --> 00:29:50,040 zato pravi x je manj kot ali kaj podobnega. 514 00:29:50,040 --> 00:29:51,880 Torej, to je nekoliko zmedeno, ker zdaj 515 00:29:51,880 --> 00:29:53,379 vam samo ne vem, kaj se dogaja. 516 00:29:53,379 --> 00:29:58,690 Torej, mislim, da eno stvar, ki je res dobro o samo poskušam debug 517 00:29:58,690 --> 00:30:04,600 je, da lahko samo naredi val je večja kot in videli, kaj se tam dogaja. 518 00:30:04,600 --> 00:30:09,720 >> Torej val-- je privzeto 5, tako kaj je samo ne Val večji od 5. 519 00:30:09,720 --> 00:30:14,280 Torej je ta vektor false false TRUE. 520 00:30:14,280 --> 00:30:17,206 Torej, zdaj, ko gledaš to pa se dogaja, da reči, če 521 00:30:17,206 --> 00:30:20,080 in potem se dogaja, da vam to je vektor false false TRUE. 522 00:30:20,080 --> 00:30:23,450 >> Torej, ko se boste peljali to v R, R nima pojma, kaj počnete. 523 00:30:23,450 --> 00:30:26,650 Ker se pričakuje, da bo eno samo vrednost, ki je logično, in zdaj 524 00:30:26,650 --> 00:30:29,420 ste mu daje vektor Booleans. 525 00:30:29,420 --> 00:30:31,970 Torej privzeto, R je samo reči, kaj za vraga, 526 00:30:31,970 --> 00:30:35,440 Bom domnevati, da ste dogaja, da prvi element tukaj. 527 00:30:35,440 --> 00:30:38,320 Torej bom say-- grem domnevati, da je to napačno. 528 00:30:38,320 --> 00:30:40,890 Tako se dogaja, da reči Ne, to ni prav. 529 00:30:40,890 --> 00:30:45,246 >> Prav tako se dogaja, da je val enaka enaka. 530 00:30:45,246 --> 00:30:47,244 Ne, žal 5. 531 00:30:47,244 --> 00:30:48,910 In to tudi dogaja, da so lažne, kot dobro. 532 00:30:48,910 --> 00:30:52,410 Tako se dogaja, da reči ne, to ni res, pa tudi, tako da je 533 00:30:52,410 --> 00:30:53,680 dogaja, da se vrnete na to zadnjo. 534 00:30:53,680 --> 00:30:56,420 535 00:30:56,420 --> 00:31:01,360 >> Torej je to bodisi dobro ali slabo stvar, odvisno od tega, kako si jo ogledate. 536 00:31:01,360 --> 00:31:05,104 Ker, ko ste ustvarjanju te funkcije, 537 00:31:05,104 --> 00:31:06,770 vi dejansko ne vem, kaj se dogaja. 538 00:31:06,770 --> 00:31:10,210 Tako da včasih bi si želeli napako, ali morda želite le opozorilo. 539 00:31:10,210 --> 00:31:12,160 V tem primeru, R, ne delaj tega. 540 00:31:12,160 --> 00:31:14,300 Torej, to je res do boste temelji off kaj 541 00:31:14,300 --> 00:31:17,310 misliš jezik bi morala storiti v tem primeru 542 00:31:17,310 --> 00:31:22,920 Če se boste peljali v vektorju Booleans ko delaš, če stanju. 543 00:31:22,920 --> 00:31:31,733 >> Torej, recimo, da si imel original eno, če drug vrne TRUE in ste 544 00:31:31,733 --> 00:31:34,190 dogaja, da se vrnete FALSE. 545 00:31:34,190 --> 00:31:39,300 Torej, eden od načinov za odvajanje To pomeni I 546 00:31:39,300 --> 00:31:41,530 niti ne potrebujejo tega pogojnega stvar. 547 00:31:41,530 --> 00:31:47,220 Še ena stvar, ki sem lahko naredil je le vračanje vrednosti same. 548 00:31:47,220 --> 00:31:53,240 Torej, če ste opazili, če vas storiti val je večja od 5, 549 00:31:53,240 --> 00:31:56,350 To se dogaja, da se vrnete vektor false false TRUE. 550 00:31:56,350 --> 00:31:58,850 >> Morda je to tisto, kar si želijo za bounded.compare. 551 00:31:58,850 --> 00:32:02,940 Želite vrniti vektor Booleans če primerja vsakega izmed vrednosti 552 00:32:02,940 --> 00:32:04,190 zase. 553 00:32:04,190 --> 00:32:11,165 Tako da lahko samo ne bounded.compare Funkcija x, enak 5. 554 00:32:11,165 --> 00:32:13,322 555 00:32:13,322 --> 00:32:15,363 In potem, namesto da bi to, če drug pogoj, 556 00:32:15,363 --> 00:32:21,430 Jaz sem šele tekoč, da se vrnete x je večja od 5. 557 00:32:21,430 --> 00:32:23,620 Torej, če je to res, potem to se dogaja, da se vrne TRUE. 558 00:32:23,620 --> 00:32:26,830 In potem, če je ni, je to dogaja, da se vrnete FALSE. 559 00:32:26,830 --> 00:32:30,880 >> In to bo delo za koli od teh struktur. 560 00:32:30,880 --> 00:32:41,450 Tako sem lahko bounded.compare c 1 6 ali 9 in potem bom rekel, je enako 6, 561 00:32:41,450 --> 00:32:42,799 npr. 562 00:32:42,799 --> 00:32:44,840 In potem se dogaja, da vam pravo Boolean 563 00:32:44,840 --> 00:32:48,240 vektor, ki ste načrtovanju. 564 00:32:48,240 --> 00:32:50,660 >> Torej, to so samo funkcije in mi je zdaj pa le 565 00:32:50,660 --> 00:32:54,980 vam pokažem nekaj interaktivnih vizualije. 566 00:32:54,980 --> 00:32:59,700 Ne verjamem, da sem dejansko imel Wi-Fi tukaj, tako da mi samo pojdi naprej 567 00:32:59,700 --> 00:33:01,970 in preskočite tole se mi zdi. 568 00:33:01,970 --> 00:33:05,260 >> Ampak ena stvar, ki je kul čeprav je, da če vam je prav 569 00:33:05,260 --> 00:33:09,600 želite preizkusiti kup različnih podatkovnih ukazi, 570 00:33:09,600 --> 00:33:13,320 obstaja kup različnih nizov ki so že prednaložena v R. 571 00:33:13,320 --> 00:33:15,770 Tako je eden izmed njih je imenovano iris nabor podatkov. 572 00:33:15,770 --> 00:33:18,910 To je eden izmed najbolj dobro znana tisti v strojnega učenja. 573 00:33:18,910 --> 00:33:23,350 Boste ponavadi samo narediti neke vrste testnih primerov, da vidite, če je vaša koda teče. 574 00:33:23,350 --> 00:33:27,520 Torej, kaj je samo preveriti, kaj je iris. 575 00:33:27,520 --> 00:33:33,130 >> Torej ta stvar se dogaja da se podatkovni niz. 576 00:33:33,130 --> 00:33:36,000 In to je vrsta dolga, saj Pravkar sem izpisal iris. 577 00:33:36,000 --> 00:33:38,810 To je tiskanje celotno stvar. 578 00:33:38,810 --> 00:33:42,830 Tako da ima vse te različne imena. 579 00:33:42,830 --> 00:33:45,505 Torej, iris je zbirka iz različnih rož. 580 00:33:45,505 --> 00:33:48,830 V tem primeru, je povedal, ste vrstah njo, 581 00:33:48,830 --> 00:33:54,760 vse te različne širine in Dolžine na SEPAL in cvetnih lističev. 582 00:33:54,760 --> 00:33:58,880 >> In tako je normalno, če želite natisniti iris, 583 00:33:58,880 --> 00:34:03,680 na primer, da ne želite, da ga ima vse to zato, ker da lahko prevzame 584 00:34:03,680 --> 00:34:05,190 vaše celotno konzolo. 585 00:34:05,190 --> 00:34:09,280 Torej, ena stvar, ki je res Lepo je funkcija glave. 586 00:34:09,280 --> 00:34:12,929 Torej, če si naredil glavo iris, to vam bo dala 587 00:34:12,929 --> 00:34:17,389 prvih pet vrstic ali šest mislim. 588 00:34:17,389 --> 00:34:19,909 In potem tudi vam, lahko samo določite tukaj. 589 00:34:19,909 --> 00:34:22,914 Torej 20-- bo to dalo vam prvih 20 vrstic. 590 00:34:22,914 --> 00:34:24,830 In dejansko sem bil nekako presenečen, da je to 591 00:34:24,830 --> 00:34:28,770 dal mi je šest, tako da mi gredo naprej in preverite iris-- ali glavo, mi je žal. 592 00:34:28,770 --> 00:34:31,699 593 00:34:31,699 --> 00:34:34,960 In tu bo dal si dokumentacijo 594 00:34:34,960 --> 00:34:37,960 kaj glava vrednost ne. 595 00:34:37,960 --> 00:34:40,839 Torej se vrne prvi ali zadnji od objekta. 596 00:34:40,839 --> 00:34:42,630 In potem bom pogled na privzete vrednosti. 597 00:34:42,630 --> 00:34:47,340 In potem je pravi privzeto Postopek glava x in je n enak 6l. 598 00:34:47,340 --> 00:34:50,620 Torej, to vrne prvih šest elementov. 599 00:34:50,620 --> 00:34:55,050 In podobno, če ste opazili sem, ni bilo treba navesti n enak 6. 600 00:34:55,050 --> 00:34:56,840 Privzeto se uporablja šest, mislim. 601 00:34:56,840 --> 00:35:00,130 In potem, če želim opredeliti nekatere vrednost, nato pa sem si lahko ogledajo tudi to. 602 00:35:00,130 --> 00:35:02,970 603 00:35:02,970 --> 00:35:10,592 >> Tako, da je nekaj preprostih ukazov in tu je še eden, ki je just-- dobro, 604 00:35:10,592 --> 00:35:12,550 I can-- je to pravzaprav malo bolj zapletena, 605 00:35:12,550 --> 00:35:17,130 vendar bo to vzemite razred vsakega stolpca šarenice niza. 606 00:35:17,130 --> 00:35:20,910 Torej, to vam bo pokazal, kaj je vsak od teh Stolpci so v smislu njihovih vrstah. 607 00:35:20,910 --> 00:35:23,665 Torej SEPAL dolžina je številčna, SEPAL širina je številčna. 608 00:35:23,665 --> 00:35:26,540 Vse te vrednote so samo številčna saj lahko razberem iz teh podatkov 609 00:35:26,540 --> 00:35:29,440 strukturirati so ti vse bo številčna. 610 00:35:29,440 --> 00:35:34,310 >> In stolpec Vrsta se bo faktor. 611 00:35:34,310 --> 00:35:37,270 Torej normalno, bi si mislil, da je to je kot niz znakov. 612 00:35:37,270 --> 00:35:48,830 Ampak, če si naredil irisSpecies, in potem bom naredil glavo 5, 613 00:35:48,830 --> 00:35:51,820 in to se dogaja, da natisnete od prvih petih vrednosti. 614 00:35:51,820 --> 00:35:54,150 >> In potem opazili ta raven. 615 00:35:54,150 --> 00:35:58,870 Torej je to saying-- to je način, r je imajo kategorično spremenljivk. 616 00:35:58,870 --> 00:36:03,765 Torej, namesto samo ob nizov znakov, 617 00:36:03,765 --> 00:36:06,740 ima ravneh, ki določajo, katere od teh stvari so. 618 00:36:06,740 --> 00:36:12,450 >> Torej, recimo, irisSpecies 1. 619 00:36:12,450 --> 00:36:17,690 Torej, kaj želite storiti, je tu sem podnabora s tem stolpcu vrste. 620 00:36:17,690 --> 00:36:21,480 Torej, to traja Vrsta stolpec in nato 621 00:36:21,480 --> 00:36:23,820 jo indeksira, da bi dobili prvi element. 622 00:36:23,820 --> 00:36:27,140 Torej, to naj vam ne setosa. 623 00:36:27,140 --> 00:36:28,710 In tudi vam daje raven tukaj. 624 00:36:28,710 --> 00:36:32,812 >> Tako da lahko tudi primerjate to je setosa znakov 625 00:36:32,812 --> 00:36:34,645 in to se ne dogaja da bi bilo res, ker je ena 626 00:36:34,645 --> 00:36:37,940 je drugačne vrste kot drugi. 627 00:36:37,940 --> 00:36:40,590 Ali mislim, da je res, ker raziskave je bolj inteligenten kot to. 628 00:36:40,590 --> 00:36:45,420 In izgleda na to in potem pravi, morda je to tisto, kar želite. 629 00:36:45,420 --> 00:36:51,860 Tako se dogaja, da pravi značaj Niz setosa je enako kot ta. 630 00:36:51,860 --> 00:37:01,290 In potem podobno, lahko tudi samo zgrabi ti všeč tako naprej. 631 00:37:01,290 --> 00:37:05,580 >> Tako da je le nekakšna Hitre ukazi naboru podatkov. 632 00:37:05,580 --> 00:37:08,030 Torej, tukaj je nekaj raziskovanje podatkov. 633 00:37:08,030 --> 00:37:11,360 Torej, to je malo več ukvarja z analizo podatkov. 634 00:37:11,360 --> 00:37:18,340 In to je vzeto iz nekaterih bootcamp v raziskave v Berkeleyju. 635 00:37:18,340 --> 00:37:20,790 >> Torej knjižnica tujih. 636 00:37:20,790 --> 00:37:24,880 Torej grem naložiti v knjižnica, ki se imenuje tuja. 637 00:37:24,880 --> 00:37:32,460 Torej, to se dogaja, da me read.dta zato predvidevam, da imam ta nabor podatkov. 638 00:37:32,460 --> 00:37:39,000 To je shranjena v trenutni delovni imenik mojega konzole. 639 00:37:39,000 --> 00:37:42,190 Torej, kaj je prav, kaj delovni imenik. 640 00:37:42,190 --> 00:37:44,620 >> Torej, tukaj je moj delovni imenik. 641 00:37:44,620 --> 00:37:50,040 In branje podatkov dot, to stvar, je rekel to datoteko 642 00:37:50,040 --> 00:37:54,650 se nahaja v mapi podatkov o Ta trenutni delovni imenik. 643 00:37:54,650 --> 00:38:00,520 In read.dta to ni Privzeti ukaz. 644 00:38:00,520 --> 00:38:02,760 Mislim, da je naložen že. 645 00:38:02,760 --> 00:38:04,750 IEI Predvideval sem, da je to že naložen. 646 00:38:04,750 --> 00:38:08,115 >> Ampak tako read.dta ne bo biti privzeti ukaz. 647 00:38:08,115 --> 00:38:11,550 In zato boste morali naložiti v tej knjižnici package-- 648 00:38:11,550 --> 00:38:14,500 ta paket se imenuje tuje. 649 00:38:14,500 --> 00:38:16,690 In če nimate paket, mislim, 650 00:38:16,690 --> 00:38:19,180 tuji eden od vgrajenih narave. 651 00:38:19,180 --> 00:38:31,150 Sicer pa lahko tudi vi storiti install.packages 652 00:38:31,150 --> 00:38:33,180 in to bo namestite paket. 653 00:38:33,180 --> 00:38:36,878 In to vam bo dal R. Uh, ne. 654 00:38:36,878 --> 00:38:39,830 655 00:38:39,830 --> 00:38:43,140 In potem sem le, da bo stop to zato, ker sem ga že imajo. 656 00:38:43,140 --> 00:38:46,920 >> Ampak kaj je res lepo o R je, da je upravljanje paketa 657 00:38:46,920 --> 00:38:48,510 Sistem je zelo elegantna. 658 00:38:48,510 --> 00:38:52,470 Ker bo to shranite vse res lepo za vas. 659 00:38:52,470 --> 00:38:59,780 Torej, v tem primeru gre za shranjevanje je v, verjamem, to knjižnico tukaj. 660 00:38:59,780 --> 00:39:02,390 >> Torej, kadarkoli želite namestitev nove pakete, 661 00:39:02,390 --> 00:39:04,980 to je samo tako enostavno, kot početje install.packages 662 00:39:04,980 --> 00:39:07,500 in R bo upravljal vse paketi za vas. 663 00:39:07,500 --> 00:39:12,900 Tako da vam ne bo treba nekaj narediti v Python, kjer imate zunanji paket 664 00:39:12,900 --> 00:39:15,330 menedžerji kot papir Anaconda, kjer ste 665 00:39:15,330 --> 00:39:18,310 doing-- namestitvi Paketi zunaj Python 666 00:39:18,310 --> 00:39:20,940 in potem jih boste poskušali zagnati sami. 667 00:39:20,940 --> 00:39:22,210 Torej, to je res lep način. 668 00:39:22,210 --> 00:39:25,590 >> In install.packages potrebuje internet. 669 00:39:25,590 --> 00:39:31,950 Jo popelje iz strežnika in skladišče, 670 00:39:31,950 --> 00:39:33,960 zbira vse Paketi se imenuje Cran. 671 00:39:33,960 --> 00:39:40,690 In se določi, kateri nekakšno ogledalo želite prenesti pakete. 672 00:39:40,690 --> 00:39:43,420 >> Torej, tukaj sem ob tej skupini podatkov. 673 00:39:43,420 --> 00:39:46,240 Jaz sem jo prebrali v uporabo te funkcije. 674 00:39:46,240 --> 00:39:49,360 Torej, mi gredo naprej in narediti. 675 00:39:49,360 --> 00:39:52,900 >> Torej, kaj je domnevati, da imate ta nabor podatkov 676 00:39:52,900 --> 00:39:55,550 in imate absolutno ne vem, kaj je to. 677 00:39:55,550 --> 00:39:58,560 In to dejansko pride gor dokaj pogosto v industriji 678 00:39:58,560 --> 00:40:00,910 kjer imate le ti tone in tone grdo stvari 679 00:40:00,910 --> 00:40:02,890 in oni so neverjetno neoznačena. 680 00:40:02,890 --> 00:40:06,380 Torej, tukaj imam to Nabor podatkov, in ne vem, 681 00:40:06,380 --> 00:40:08,400 kaj je to, da sem samo kaže, da ga preverite. 682 00:40:08,400 --> 00:40:10,620 >> Torej bom naredil z glavo naprej. 683 00:40:10,620 --> 00:40:14,190 Tako sem preveriti v prvih šestih stebri, kaj to je nabor podatkov. 684 00:40:14,190 --> 00:40:21,730 Tako da je to stanje, pres04, nato pa Vse te različne vrste stolpcev. 685 00:40:21,730 --> 00:40:25,612 In kaj je zanimivo tu, mislim, da je tebi 686 00:40:25,612 --> 00:40:27,945 bi bilo domnevati, da to izgleda kot neke vrste volitev. 687 00:40:27,945 --> 00:40:30,482 688 00:40:30,482 --> 00:40:32,190 In mislim, da samo od pogledate datoteko 689 00:40:32,190 --> 00:40:41,070 ime je to nekakšna zbirko podatkov o kandidatih ali volivci 690 00:40:41,070 --> 00:40:44,920 kdo je glasoval za posebne predsednikov ali predsednik kandidati 691 00:40:44,920 --> 00:40:46,550 za volitve 2004. 692 00:40:46,550 --> 00:40:52,920 >> Torej, tukaj je vrednost 1, 2 tako eden od načinov za shranjevanje 693 00:40:52,920 --> 00:40:56,540 Predsednik kandidati so njihova imena. 694 00:40:56,540 --> 00:40:59,780 V tem primeru izgleda oni so samo integer vrednosti. 695 00:40:59,780 --> 00:41:04,030 Torej leta 2004 je bil Bush versus Kerry verjamem. 696 00:41:04,030 --> 00:41:09,010 In zdaj, recimo, samo ne vem, ali 1 ustreza Bush ali 2 697 00:41:09,010 --> 00:41:11,703 ustreza Kerry ali in tako naprej in tako naprej, kajne? 698 00:41:11,703 --> 00:41:15,860 >> In to je, da mi, dokaj pogost problem. 699 00:41:15,860 --> 00:41:18,230 Torej, kaj lahko storite v tem primeru? 700 00:41:18,230 --> 00:41:20,000 Torej, kaj je preveriti vse te druge stvari. 701 00:41:20,000 --> 00:41:22,790 >> stanje, sem ob predpostavki, to prihaja iz različnih držav. 702 00:41:22,790 --> 00:41:25,100 partyid, dohodek. 703 00:41:25,100 --> 00:41:27,710 Poglejmo partyid. 704 00:41:27,710 --> 00:41:32,800 Tako da morda ena stvar, ki jo lahko naredimo je, pogled na vsako od opazovanj 705 00:41:32,800 --> 00:41:36,250 da imajo partyid republikanskih ali demokrat ali kaj podobnega. 706 00:41:36,250 --> 00:41:38,170 Torej, kaj je samo pogledati, kaj partyid je. 707 00:41:38,170 --> 00:41:41,946 >> Torej grem, da bi dat in potem grem 708 00:41:41,946 --> 00:41:47,960 storiti to znak za dolar operator, da sem že prej 709 00:41:47,960 --> 00:41:50,770 in to se dogaja, da podmnožica na ta stolpec. 710 00:41:50,770 --> 00:41:57,760 In potem bom vodil to 20, samo da bi videli, kaj to izgleda. 711 00:41:57,760 --> 00:42:00,170 >> Torej je to samo kup agencijam. 712 00:42:00,170 --> 00:42:02,800 Torej, z drugimi besedami, ki ste jih manjkajoče podatke o teh fantov. 713 00:42:02,800 --> 00:42:08,100 Vendar boste opazili tudi to dat partyid je dejavnik 714 00:42:08,100 --> 00:42:10,030 tako da to vam daje različne kategorije. 715 00:42:10,030 --> 00:42:14,170 Torej, z drugimi besedami, lahko partyid sprejeti Demokrat, republikanci, Independent, 716 00:42:14,170 --> 00:42:16,640 ali kaj drugega. 717 00:42:16,640 --> 00:42:23,940 >> Torej, gremo naprej in dovolimo, videti, kateri od teh is-- oh, OK. 718 00:42:23,940 --> 00:42:28,480 Torej bom podmnožica da partyid in nato 719 00:42:28,480 --> 00:42:32,780 poglej kateri so tisti, Demokrat, npr. 720 00:42:32,780 --> 00:42:37,150 To se dogaja, da vam Boolean, ogromen Boolean od TRUEs in FALSEs. 721 00:42:37,150 --> 00:42:41,630 >> In zdaj, recimo, da želim da podmnožica teh fantov. 722 00:42:41,630 --> 00:42:47,260 Torej, to se dogaja, da mi dat in podskupina za kar pripombe 723 00:42:47,260 --> 00:42:48,910 imajo partyid enaka enaka demokrat. 724 00:42:48,910 --> 00:42:52,830 725 00:42:52,830 --> 00:42:55,180 In to je precej dolgo, saj tam je tako mnogi od njih. 726 00:42:55,180 --> 00:42:59,060 Torej sedaj, da bom vodil to v 20. 727 00:42:59,060 --> 00:43:05,690 728 00:43:05,690 --> 00:43:11,270 >> In kot ste opazili, je enaka enaka Zanimivo je, da ste 729 00:43:11,270 --> 00:43:13,250 already-- ste tudi za NAS. 730 00:43:13,250 --> 00:43:19,010 Torej, v tem primeru še vedno ne morejo dobiti vse informacije, ker sedaj imate Nas 731 00:43:19,010 --> 00:43:22,650 in si samo želim, da vidite, kateri od Opazovanje ustrezajo demokrat 732 00:43:22,650 --> 00:43:24,670 in ne ti manjka sami ceni. 733 00:43:24,670 --> 00:43:27,680 Torej, kako bi se znebili teh agencijam? 734 00:43:27,680 --> 00:43:36,410 >> Torej, tukaj sem samo z uporabo up tipko na moj kurzor, nato pa rekel gibljejo. 735 00:43:36,410 --> 00:43:39,778 In potem sem jaz pravkar dogaja reči is.na datpartyid. 736 00:43:39,778 --> 00:43:48,970 737 00:43:48,970 --> 00:43:52,720 Torej to in in bo dve različni Boolove vektorji 738 00:43:52,720 --> 00:43:57,160 in pravijo, da se dogaja, da TRUE in FALSE npr. 739 00:43:57,160 --> 00:43:59,190 Tako se dogaja, da storite to komponento pametno. 740 00:43:59,190 --> 00:44:02,910 Torej, tukaj sem rekel vzemi podatkovni niz, podmnožica 741 00:44:02,910 --> 00:44:10,170 za tiste, ki ustrezajo demokrat, in odstraniti vse od njih, da niso NA. 742 00:44:10,170 --> 00:44:13,540 >> Torej, to will-- smeli vam nekaj. 743 00:44:13,540 --> 00:44:16,540 744 00:44:16,540 --> 00:44:17,600 Poglejmo is.na. 745 00:44:17,600 --> 00:44:24,670 746 00:44:24,670 --> 00:44:27,690 Poskusimo is.na datpartyid. 747 00:44:27,690 --> 00:44:36,290 748 00:44:36,290 --> 00:44:45,290 In to je treba dati you-- sorry-- le logični vektor. 749 00:44:45,290 --> 00:44:49,260 In potem, ker je tako dolgo, Bom podmnožica do 20. 750 00:44:49,260 --> 00:44:49,760 OK. 751 00:44:49,760 --> 00:44:51,570 Tako da bi to delovalo. 752 00:44:51,570 --> 00:44:54,700 >> In to bo tudi TRUEs. 753 00:44:54,700 --> 00:45:01,830 Ah, to je moja napaka v tem, da sem I'm-- uporabo C ++ in R izmenjaje tako naredim 754 00:45:01,830 --> 00:45:03,590 to napaka, ves čas. 755 00:45:03,590 --> 00:45:05,807 In upravljavec je pravzaprav tista, ki jo želite. 756 00:45:05,807 --> 00:45:08,140 Si ne želite uporabljati dva ampersands, samo enega. 757 00:45:08,140 --> 00:45:14,970 758 00:45:14,970 --> 00:45:17,010 OK. 759 00:45:17,010 --> 00:45:18,140 >> Torej, poglejmo. 760 00:45:18,140 --> 00:45:20,930 761 00:45:20,930 --> 00:45:23,920 Tako smo subsetted za partyid kjer oni demokrate 762 00:45:23,920 --> 00:45:25,300 in oni ne manjka vrednot. 763 00:45:25,300 --> 00:45:27,690 In zdaj si oglejmo ki je tiste, ki so glasovali za. 764 00:45:27,690 --> 00:45:31,530 Tako se zdi, kot najbolj od njih je glasovalo za 1. 765 00:45:31,530 --> 00:45:36,090 Tako da sem šel naprej in pravijo, da je Kerry. 766 00:45:36,090 --> 00:45:39,507 >> In podobno, lahko gre tudi republikanec 767 00:45:39,507 --> 00:45:41,090 in upajmo, to bi vam moralo dati 2. 768 00:45:41,090 --> 00:45:49,730 769 00:45:49,730 --> 00:45:51,770 To je samo kup različnih stolpcev. 770 00:45:51,770 --> 00:45:53,070 In res, to je 2. 771 00:45:53,070 --> 00:45:55,750 Torej partyid vse republikance, večina od njih so glasovali za 2 osebi. 772 00:45:55,750 --> 00:45:58,390 >> Tako se zdi, kot, samo jih je videti na to, 773 00:45:58,390 --> 00:46:00,600 Republikanski se bo very-- ali partyid 774 00:46:00,600 --> 00:46:02,790 se bo zelo Velik dejavnik pri določanju 775 00:46:02,790 --> 00:46:05,420 kateri kandidat oni bodo glasovali za. 776 00:46:05,420 --> 00:46:07,120 In to seveda velja na splošno. 777 00:46:07,120 --> 00:46:10,139 In to se ujema z vašim intuicija, seveda. 778 00:46:10,139 --> 00:46:11,930 Tako se zdi, kot da sem zmanjkuje časa, da 779 00:46:11,930 --> 00:46:17,040 Naj bi samo iti naprej in pokazati nekaj hitrih slik. 780 00:46:17,040 --> 00:46:21,120 Torej, tukaj je nekaj, kar je nekoliko bolj zapleten z vizualizacijo. 781 00:46:21,120 --> 00:46:26,450 Torej v tem primeru, je to zelo preprosta analiza samo preverjanje, kaj 782 00:46:26,450 --> 00:46:28,500 Predsednik '04 je. 783 00:46:28,500 --> 00:46:33,920 >> Torej, v tem primeru pa vam povedati, želel odgovoriti na to vprašanje. 784 00:46:33,920 --> 00:46:38,540 Torej domnevam, nas je zanimalo, glasovanje obnašanje v 2004 predsednik volitvah 785 00:46:38,540 --> 00:46:41,170 in kako, da se razlikuje po rasi. 786 00:46:41,170 --> 00:46:44,380 Torej ne samo, da želite glej obnašanje za glasovanje, 787 00:46:44,380 --> 00:46:47,860 vendar želite podmnožica vsake rase in nekako povzeti, da je. 788 00:46:47,860 --> 00:46:50,770 In lahko povem le, s tem kompleksnem zapisu 789 00:46:50,770 --> 00:46:52,580 da je to nekako dobili motna. 790 00:46:52,580 --> 00:46:56,390 >> Torej, ena od bolj napredne raziskave paketi, ki je tudi vrsta nedavnih 791 00:46:56,390 --> 00:47:00,070 se imenuje dplyr. 792 00:47:00,070 --> 00:47:03,060 Tako da je to ena tukaj. 793 00:47:03,060 --> 00:47:08,080 In ggg-- ggplot2 je le lepo način za boljše vizualizacije 794 00:47:08,080 --> 00:47:09,400 kot je vgrajeno v enem. 795 00:47:09,400 --> 00:47:11,108 >> Tako da bom za nalaganje ti dve knjižnice. 796 00:47:11,108 --> 00:47:13,200 797 00:47:13,200 --> 00:47:16,950 In potem, sem šel pred in zaženete ta ukaz. 798 00:47:16,950 --> 00:47:19,050 Si to le lahko obravnavamo kot črno škatlo. 799 00:47:19,050 --> 00:47:23,460 >> Kaj se dogaja, je, da te cevi Operater je mimo tega argumenta 800 00:47:23,460 --> 00:47:24,110 v tukaj. 801 00:47:24,110 --> 00:47:28,070 Torej, jaz pravim skupino, ki jo dat rase in nato predsednik 04. 802 00:47:28,070 --> 00:47:31,530 In potem vsi ti ukazi sta filtriranje in nato povzema 803 00:47:31,530 --> 00:47:34,081 kje delam štetje in Nato sem jo ubral tukaj. 804 00:47:34,081 --> 00:47:39,980 805 00:47:39,980 --> 00:47:42,500 OK kul. 806 00:47:42,500 --> 00:47:44,620 Torej, gremo naprej in glej, kaj to izgleda. 807 00:47:44,620 --> 00:47:52,280 808 00:47:52,280 --> 00:47:57,290 >> Torej, kaj se tukaj dogaja, je, da sem Samo zapiše vsaka dirke in potem 809 00:47:57,290 --> 00:47:59,670 ki je tiste, ki so glasovali za. 810 00:47:59,670 --> 00:48:03,492 In ti dve različni Vrednosti ustrezajo 2 in 1. 811 00:48:03,492 --> 00:48:05,325 Če želite biti bolj elegantna, lahko tudi vi 812 00:48:05,325 --> 00:48:11,770 Samo določite, da je Kerry-- ali 2 2 je Bush, nato 1 je Kerry. 813 00:48:11,770 --> 00:48:13,700 In lahko tudi da v legendi. 814 00:48:13,700 --> 00:48:17,410 >> In lahko razdeli tudi teh grafov. 815 00:48:17,410 --> 00:48:19,480 Ker ena stvar je, da, če ste opazili, 816 00:48:19,480 --> 00:48:24,560 To ni zelo težko ugotoviti katera od teh dveh vrednosti je večja. 817 00:48:24,560 --> 00:48:27,920 Torej, ena stvar, ki ste jo želeli storiti, je, da to modro območje 818 00:48:27,920 --> 00:48:31,855 in je le korak čez tukaj, tako da vas lahko primerjajo ti dve bok. 819 00:48:31,855 --> 00:48:34,480 In mislim, da je nekaj, kar sem nimajo časa, da storiti zdaj, 820 00:48:34,480 --> 00:48:36,660 ampak to je tudi zelo enostavno narediti. 821 00:48:36,660 --> 00:48:40,310 Lahko samo pogledati v man strani ggplot. 822 00:48:40,310 --> 00:48:47,170 Tako da lahko samo ne ggplot kot da in branje v tej man strani. 823 00:48:47,170 --> 00:48:51,920 >> Zato mi dovolite, samo hitro vam pokažem nekaj zanimivih stvari. 824 00:48:51,920 --> 00:48:57,610 Pojdimo naprej in iti to-- prav Uporaba strojnega učenja. 825 00:48:57,610 --> 00:49:02,450 Torej, recimo, da imamo te tri Paketi tako da bom naložiti ti v. 826 00:49:02,450 --> 00:49:05,500 827 00:49:05,500 --> 00:49:09,170 Torej je to samo natisne nekaj Podatki Ko sem naložil v stvar. 828 00:49:09,170 --> 00:49:15,220 Torej, jaz pravim to read.csv, Ta nabor podatkov, in zdaj 829 00:49:15,220 --> 00:49:18,940 Grem, da gredo naprej in iskati in glej, kaj je notri tega niza. 830 00:49:18,940 --> 00:49:22,080 >> Torej, prvih 20 pripomb. 831 00:49:22,080 --> 00:49:27,190 Tako da sem samo še X1, X2, in Y. Tako je Zdi se, kot kup teh vrednot 832 00:49:27,190 --> 00:49:31,640 so od morda 20 do 80 ali tako. 833 00:49:31,640 --> 00:49:37,700 In potem podobno X2 in nato to je Y zdi etikete 0 in 1. 834 00:49:37,700 --> 00:49:49,500 >> Če želite to preveriti, sem lahko pač povzetek podatkov X1. 835 00:49:49,500 --> 00:49:51,660 In potem podobno za Vsi ti drugi stolpci. 836 00:49:51,660 --> 00:49:55,300 Torej, povzetek je hiter način Samo prikazuje hitre vrednosti. 837 00:49:55,300 --> 00:49:56,330 Oh, oprostite. 838 00:49:56,330 --> 00:49:58,440 To bi morali biti Y. 839 00:49:58,440 --> 00:50:03,420 >> Torej v tem primeru, daje kvantili, mediane, maxes kot dobro. 840 00:50:03,420 --> 00:50:07,130 V tem primeru dataY, lahko vidite da je le, da bo 0 in 1. 841 00:50:07,130 --> 00:50:10,100 Tudi povprečna pravijo 0,6, samo pomeni, da zanj 842 00:50:10,100 --> 00:50:13,380 Zdi se, kot da sem imel več kot 1s 0s. 843 00:50:13,380 --> 00:50:16,160 >> Zato mi dovolite, iti naprej in pokazati ste kaj to izgleda. 844 00:50:16,160 --> 00:50:17,470 Tako da sem le, da bo to parcelo. 845 00:50:17,470 --> 00:50:22,852 846 00:50:22,852 --> 00:50:24,636 Poglejmo, kako je to jasno. 847 00:50:24,636 --> 00:50:30,492 848 00:50:30,492 --> 00:50:31,468 Oh OK. 849 00:50:31,468 --> 00:50:35,840 850 00:50:35,840 --> 00:50:36,340 OK. 851 00:50:36,340 --> 00:50:37,590 >> Torej, to je, kako izgleda. 852 00:50:37,590 --> 00:50:46,310 Tako se zdi, kot rumeno I določenih kot 0, nato pa rdeče I določena kot 1s. 853 00:50:46,310 --> 00:50:52,190 Torej, tukaj izgleda label točke in je 854 00:50:52,190 --> 00:50:56,410 Zdi se, kot da si si želela nekaj nekako grozdenja na to. 855 00:50:56,410 --> 00:51:01,020 >> In mi samo pojdi naprej in pokazati si nekatere od teh vgrajenih funkcij. 856 00:51:01,020 --> 00:51:03,580 Torej, tukaj je lm. 857 00:51:03,580 --> 00:51:06,060 Torej, to je samo poskušam da se prilega črto k temu. 858 00:51:06,060 --> 00:51:08,640 Torej, kaj je najboljši način, da sem lahko fit linijo kot 859 00:51:08,640 --> 00:51:14,020 da bo najbolje ločiti to neke vrste grozdov. 860 00:51:14,020 --> 00:51:21,790 In v najboljšem primeru, lahko samo videti da sem teči vse te ukaze 861 00:51:21,790 --> 00:51:25,450 in potem, bom naprej in dodali vrstico. 862 00:51:25,450 --> 00:51:28,970 >> Torej, to se zdi kot najboljši ugibati. 863 00:51:28,970 --> 00:51:34,150 To je ob najboljši tisti, ki minimizira Napaka pri poskusu, da se prilega to vrstico. 864 00:51:34,150 --> 00:51:40,000 Očitno je, da to izgleda nekako dobro, vendar to ni najboljše. 865 00:51:40,000 --> 00:51:43,130 In linearni modeli, v splošno, se bo 866 00:51:43,130 --> 00:51:46,811 res super za teorijo in le neke gradbenih temeljev stroj 867 00:51:46,811 --> 00:51:47,310 učenje. 868 00:51:47,310 --> 00:51:50,330 Toda v praksi, si boste želijo narediti nekaj bolj splošno. 869 00:51:50,330 --> 00:51:54,280 >> Tako da lahko samo poskusite zagnati nekaj, kar se imenuje nevronske mreže. 870 00:51:54,280 --> 00:51:57,110 Te stvari so vse bolj pogosti. 871 00:51:57,110 --> 00:52:00,530 In samo delo fantastično za velike nizov. 872 00:52:00,530 --> 00:52:07,080 Torej, v tem primeru smo le have-- dajmo see-- imamo nrow. 873 00:52:07,080 --> 00:52:09,010 Torej je nrow samo rekel število vrstic. 874 00:52:09,010 --> 00:52:11,790 Torej, v tem primeru sem imajo 100 stališč. 875 00:52:11,790 --> 00:52:15,010 >> Torej, mi gredo naprej in da nevronske mreže. 876 00:52:15,010 --> 00:52:18,620 Torej, to je res lepo ker sem lahko samo rečem nnet 877 00:52:18,620 --> 00:52:21,767 in potem sem mine Y. Torej Y je, da stolpec. 878 00:52:21,767 --> 00:52:23,850 In potem mine na drugi dve spremenljivki. 879 00:52:23,850 --> 00:52:27,360 Torej je ta krajši Zapis za X1 in X2. 880 00:52:27,360 --> 00:52:29,741 >> Torej, gremo naprej in vodijo to. 881 00:52:29,741 --> 00:52:30,240 Oh, oprostite. 882 00:52:30,240 --> 00:52:32,260 Moram zagnati to celotno stvar. 883 00:52:32,260 --> 00:52:37,500 In to je samo tiskanje zapisa kako hitro ali hitro je 884 00:52:37,500 --> 00:52:38,460 zbližale. 885 00:52:38,460 --> 00:52:41,420 Torej izgleda, da se je to približujejo. 886 00:52:41,420 --> 00:52:44,970 Zato mi dovolite, pojdi naprej in tiskanje kaj to izgleda. 887 00:52:44,970 --> 00:52:51,260 >> Glejte, tukaj je slika, in tu je Obris prikazuje, kako dobro se prilega. 888 00:52:51,260 --> 00:52:56,380 In to je just-- lahko vidite to, da je to zelo, zelo lepo. 889 00:52:56,380 --> 00:52:59,400 To bi lahko celo Prezasičenost, lahko pa tudi 890 00:52:59,400 --> 00:53:03,390 prispevajo k temu z drugo Tehnike, kot so navzkrižne validacije. 891 00:53:03,390 --> 00:53:06,180 In so ti zgradili tudi v R. 892 00:53:06,180 --> 00:53:09,170 >> In naj me samo ti pokažem Metoda podpornih vektorjev. 893 00:53:09,170 --> 00:53:12,470 To je še en zelo pogosti tehniko strojnega učenja. 894 00:53:12,470 --> 00:53:18,550 To je zelo podoben linearnih modelov, vendar uporablja, kar se imenuje metoda jedra. 895 00:53:18,550 --> 00:53:22,790 In poglejmo, kako dobro, da ne. 896 00:53:22,790 --> 00:53:26,430 Torej ta je zelo podoben, kako tudi nevronska mreža opravlja, 897 00:53:26,430 --> 00:53:27,900 vendar je veliko bolj gladko. 898 00:53:27,900 --> 00:53:35,740 In to temelji off od what-- kako SVMs delo. 899 00:53:35,740 --> 00:53:40,250 >> Torej, to je samo zelo Hiter pregled nekaterih 900 00:53:40,250 --> 00:53:43,822 od vgrajenih funkcij lahko storite in tudi nekaj raziskovanja podatkov. 901 00:53:43,822 --> 00:53:45,905 Zato mi dovolite, samo pojdi naprej in pojdite nazaj na diapozitivih. 902 00:53:45,905 --> 00:53:50,290 903 00:53:50,290 --> 00:53:53,670 >> Tako je očitno, da je to ni zelo obsežen. 904 00:53:53,670 --> 00:53:57,140 In to je res samo teaser prikazuje, kaj se lahko res v R. 905 00:53:57,140 --> 00:53:59,100 Torej, če bi tako kot Če želite izvedeti več, tu 906 00:53:59,100 --> 00:54:01,210 so kup različnih virov. 907 00:54:01,210 --> 00:54:06,890 >> Torej, če ste ljubitelj učbenikov ali ste samo rad bere stvari na spletu, 908 00:54:06,890 --> 00:54:09,670 potem je to fantastično ena s Hadley Wickham, 909 00:54:09,670 --> 00:54:13,010 ki je ustvaril tudi vse te res kul paketi. 910 00:54:13,010 --> 00:54:17,420 Če ste ljubitelj video posnetkov, nato pa Berkeley je super bootcamp 911 00:54:17,420 --> 00:54:21,060 da je several-- da je nekako dolgo. 912 00:54:21,060 --> 00:54:24,210 In to vas bo naučil skoraj vse, kar bi si želeli vedeti o R. 913 00:54:24,210 --> 00:54:27,770 >> In podobno, tam je Codeacademy in vse te druge vrste 914 00:54:27,770 --> 00:54:29,414 interaktivnih spletnih strani. 915 00:54:29,414 --> 00:54:31,580 Prav tako so dobili common-- bolj in bolj pogosti. 916 00:54:31,580 --> 00:54:33,749 Torej je to zelo podobna Codeacademy. 917 00:54:33,749 --> 00:54:35,790 In končno, če vas prav želim skupnosti in pomoč, 918 00:54:35,790 --> 00:54:38,800 To so kup stvari, ki jih je mogoče iti. 919 00:54:38,800 --> 00:54:40,880 Očitno je, da smo še vedno uporabite adresarjev, samo 920 00:54:40,880 --> 00:54:44,860 kot skoraj vsak drugi programski jezik skupnost. 921 00:54:44,860 --> 00:54:47,880 In #rstats, to je Naša skupnost Twitter. 922 00:54:47,880 --> 00:54:49,580 To je pravzaprav precej pogosta. 923 00:54:49,580 --> 00:54:50,850 In potem uporabnik! 924 00:54:50,850 --> 00:54:52,340 Je samo naša konferenca. 925 00:54:52,340 --> 00:54:55,390 >> In potem, seveda, lahko uporabiti vse te druge Q & A stvari, 926 00:54:55,390 --> 00:54:57,680 kot je prekoračitev, Google in nato GitHub. 927 00:54:57,680 --> 00:55:00,490 Ker je večina teh paketov in veliko skupnosti 928 00:55:00,490 --> 00:55:03,420 bo osredotočeno na razvoj koda, ker je open source. 929 00:55:03,420 --> 00:55:05,856 In to je samo res lepo na GitHub. 930 00:55:05,856 --> 00:55:08,730 In končno, lahko stik z mano, če boste morali morebitne hitre vprašanja. 931 00:55:08,730 --> 00:55:13,530 Torej, mi lahko najdete na Twitter tukaj moja spletna stran, in samo moj email. 932 00:55:13,530 --> 00:55:17,840 Torej, upam, da je bilo something-- le kratek teaser 933 00:55:17,840 --> 00:55:20,900 česa je res sposoben narediti R. 934 00:55:20,900 --> 00:55:23,990 In upajmo, da ste ga pravkar preverite te tri povezave 935 00:55:23,990 --> 00:55:25,760 in videti, kaj lahko naredi več. 936 00:55:25,760 --> 00:55:28,130 In mislim, da je prav o tem. 937 00:55:28,130 --> 00:55:28,630 Hvala. 938 00:55:28,630 --> 00:55:30,780 >> [Aplavz] 939 00:55:30,780 --> 00:55:31,968