1 00:00:00,000 --> 00:00:00,750 2 00:00:00,750 --> 00:00:09,800 >> [MUZIKO Ludante] 3 00:00:09,800 --> 00:00:13,014 4 00:00:13,014 --> 00:00:13,680 Dustin Tran: Saluton. 5 00:00:13,680 --> 00:00:14,980 Mia nomo Dustin. 6 00:00:14,980 --> 00:00:18,419 Do mi prezentos Datumoj Analizo en R. 7 00:00:18,419 --> 00:00:19,710 Nur iomete iomete pri mi mem. 8 00:00:19,710 --> 00:00:24,320 Mi estas aktuale studento de postgrado la Inĝenierio kaj Sciencoj Aplikitaj. 9 00:00:24,320 --> 00:00:28,330 Mi studos intersekco de maŝina lerno kaj statistikoj 10 00:00:28,330 --> 00:00:31,375 tiel Datumoj Analizo en R estas vere fundamentaj al kio 11 00:00:31,375 --> 00:00:33,790 Mi faras ĉiutage. 12 00:00:33,790 --> 00:00:35,710 >> Kaj R estas speciale bona por datumoj analizo 13 00:00:35,710 --> 00:00:39,310 ĉar ĝi estas tre bona por prototipado. 14 00:00:39,310 --> 00:00:43,590 Kaj ĝenerale, kiam vi faras ian de datuma analitiko, okazas multe da problemoj 15 00:00:43,590 --> 00:00:44,920 tuj kognitiva. 16 00:00:44,920 --> 00:00:48,700 Kaj tial vi simple volas havi kelkaj vere bona lingvo 17 00:00:48,700 --> 00:00:53,770 estas nur bona por fari korpigita funkcioj, kontraste 18 00:00:53,770 --> 00:00:57,430 al devi trakti malalta nivelo aĵoj. 19 00:00:57,430 --> 00:01:01,040 Do en la komenco, Mi simple intencas enkonduki kio estas R, kial estus 20 00:01:01,040 --> 00:01:04,540 vi volas uzi ĝin, kaj tiam transiru en kelkaj demo, 21 00:01:04,540 --> 00:01:07,060 kaj ĝuste iri de tie. 22 00:01:07,060 --> 00:01:08,150 >> Do kio estas R? 23 00:01:08,150 --> 00:01:11,180 R estas nur lingvo evoluinta por statistikaj komputado 24 00:01:11,180 --> 00:01:12,450 kaj vidigo. 25 00:01:12,450 --> 00:01:16,000 Do kion tio signifas estas ke ĝi estas tre bonega lingvo 26 00:01:16,000 --> 00:01:22,400 por ia ajn afero kiu traktas necerteco aŭ datumoj videbligo. 27 00:01:22,400 --> 00:01:24,850 Do vi havas ĉiujn tiujn probablodistribuoj. 28 00:01:24,850 --> 00:01:27,140 Tie tuj estos korpigita funkcioj. 29 00:01:27,140 --> 00:01:31,650 Vi ankaŭ havas bonegajn komplotanta pakoj. 30 00:01:31,650 --> 00:01:34,110 >> Python estas alia rivalante lingvo por datumoj. 31 00:01:34,110 --> 00:01:40,020 Kaj unu afero kiun mi trovas ke R Estas multe pli bone ĉe estas vidigo. 32 00:01:40,020 --> 00:01:45,200 Do kion vi vidos en la demo kiel bone estas nur tre intuicia lingvo 33 00:01:45,200 --> 00:01:48,050 ke nur funkcias ekstreme bone. 34 00:01:48,050 --> 00:01:53,140 Ĝi estas ankaŭ libera kaj malferma fonto, kiel Estas iu ajn alia bona lingvo mi supozas. 35 00:01:53,140 --> 00:01:55,440 >> Kaj tie, faskon de ĝuste sxlosilvortoj ĵetitaj ĉe vi. 36 00:01:55,440 --> 00:02:00,450 Estas dinamikaj, kio signifas, se vi havas specifa tipo atribuitaj al objekto 37 00:02:00,450 --> 00:02:02,025 ol ĝi malebligos simple ŝanĝi ĝin sur la muŝo. 38 00:02:02,025 --> 00:02:05,670 Estas mallaborema tial estas inteligentaj pri kiel lin faras kalkulojn. 39 00:02:05,670 --> 00:02:12,250 Funkcia signifa ĝi povas vere funkcii bazita ekstere de funkcioj tiel anything-- 40 00:02:12,250 --> 00:02:16,910 omnaspeca manipulado vi estas faranta, ĝi bazos ekstere funkcioj. 41 00:02:16,910 --> 00:02:20,162 >> Do duumaj operatoroj, ekzemple, estas nur imanente funkcioj. 42 00:02:20,162 --> 00:02:21,870 Kaj ĉio tio vi estas iranta fari estas 43 00:02:21,870 --> 00:02:24,690 tuj estos kuri for funkcioj mem. 44 00:02:24,690 --> 00:02:27,140 Kaj tiam objekto orientita tiel. 45 00:02:27,140 --> 00:02:30,930 >> Do jen estas XKCD intrigo. 46 00:02:30,930 --> 00:02:34,350 Ne nur ĉar mi sentas min kiel XKCD estas fundamenta al omnaspeca 47 00:02:34,350 --> 00:02:37,770 de prezento, sed ĉar Mi sentas kiel ĉi tio vere 48 00:02:37,770 --> 00:02:42,160 marteloj la punkto kiu multaj de la tempo kiam vi faras ian datumoj 49 00:02:42,160 --> 00:02:46,570 analizo, la problemo ne estas tiel kiel rapide kuras, 50 00:02:46,570 --> 00:02:49,850 sed kiel longe ĝi tuj konduki vin plani la taskon. 51 00:02:49,850 --> 00:02:54,112 Do jen estas nur analizas se strategio a aŭ b estas pli eficiente. 52 00:02:54,112 --> 00:02:55,820 Ĉi tuj estos iu kiu vi estas 53 00:02:55,820 --> 00:02:58,290 tuj trakti amason kun en speco de malalta-nivelo lingvoj 54 00:02:58,290 --> 00:03:03,440 kie vi kontraktanta kun seg kulpoj, memoro atribuo, initializations, 55 00:03:03,440 --> 00:03:05,270 eĉ farante la enkonstruita en funkcioj. 56 00:03:05,270 --> 00:03:09,920 Kaj ĉi tiu ŝtofo estas ĉiuj manipulitaj tre, tre elegante en R. 57 00:03:09,920 --> 00:03:12,839 >> Do ĝuste al martelo ĉi punkto, la plej granda botelkolo 58 00:03:12,839 --> 00:03:13,880 tuj estos kognitiva. 59 00:03:13,880 --> 00:03:17,341 Do datumoj analizo estas tre malfacila problemo. 60 00:03:17,341 --> 00:03:19,340 Ĉu vi faras maŝino lernado aŭ vi estas 61 00:03:19,340 --> 00:03:22,550 faranta ĝuste ian bazaj datumoj tuŝo, 62 00:03:22,550 --> 00:03:25,290 vi ne volas havi preni dokumenton 63 00:03:25,290 --> 00:03:27,440 kaj tiam kompili ion ĉiufoje kiam vi 64 00:03:27,440 --> 00:03:31,010 volas vidi kion kolumno similas, kio aparta enskriboj en matrico 65 00:03:31,010 --> 00:03:32,195 aspektas. 66 00:03:32,195 --> 00:03:34,320 Do vi simple volas havi iuj vere bela interfaco 67 00:03:34,320 --> 00:03:37,740 vi povas kuri simpla funkcio kiu indeksas al cuantos 68 00:03:37,740 --> 00:03:41,870 Vi ŝatus kaj nur kuri ĝin de tie. 69 00:03:41,870 --> 00:03:44,190 Kaj vi bezonas domajno specifajn lingvojn por tio. 70 00:03:44,190 --> 00:03:51,750 Kaj R estos vere helpi vin difini la problemon kaj solvi ĝin tiamaniere. 71 00:03:51,750 --> 00:03:58,690 >> Do jen estas komploto montrante programado populareco de R kiel ĝi estas irita super tempo. 72 00:03:58,690 --> 00:04:04,060 Do kiel vi povas vidi, kiel 2013 aŭ do ĝi nur blovita supren terure. 73 00:04:04,060 --> 00:04:09,570 Kaj tiu estis justa pro ke grandega tendenco en la teknologia industrio 74 00:04:09,570 --> 00:04:10,590 pri grandaj datumoj. 75 00:04:10,590 --> 00:04:13,010 Ankaŭ, ne nur la teknologio industrio, sed vere 76 00:04:13,010 --> 00:04:16,490 ajna industrio that-- ĉar multon de la industrioj 77 00:04:16,490 --> 00:04:20,589 estas ia nepre necesa provas solvi tiujn problemojn. 78 00:04:20,589 --> 00:04:24,590 Kaj ĝenerale, vi povas havi iom da bona maniero de mezuri tiuj problemoj 79 00:04:24,590 --> 00:04:29,720 aŭ eĉ difini ilin aŭ solvanta ilin uzante datumoj. 80 00:04:29,720 --> 00:04:35,430 Do mi pensas nun R estas la 11-a plej populara lingvo en TIOBE 81 00:04:35,430 --> 00:04:38,200 kaj ĝin pligrandiĝis ekde tiam. 82 00:04:38,200 --> 00:04:40,740 83 00:04:40,740 --> 00:04:43,080 >> Do jen kelkaj pli karakterizaĵoj de R. Ĝi havas 84 00:04:43,080 --> 00:04:46,900 enorma kvanto de ujoj kaj por ĉiuj tiuj malsamaj aferoj. 85 00:04:46,900 --> 00:04:52,470 Do iam vi havas determinita problemo, plej 86 00:04:52,470 --> 00:04:55,060 la tempo R havos domadministranto por vi. 87 00:04:55,060 --> 00:04:58,520 Do ĉu vi volas konstruu ian maŝinon 88 00:04:58,520 --> 00:05:02,770 lernante algoritmon vokis Hazarda Arbaro aŭ Decido Arboj, 89 00:05:02,770 --> 00:05:07,530 aŭ eĉ provante preni la meznombro de funkcio aŭ ajna de ĉi stuff, 90 00:05:07,530 --> 00:05:10,000 R havos tiun. 91 00:05:10,000 --> 00:05:14,190 >> Kaj se vi faros vin interesas optimumigo, unu afero estas komuna 92 00:05:14,190 --> 00:05:17,430 estas ke post vi faris prototipado ia altnivela lingvo, 93 00:05:17,430 --> 00:05:19,810 vi forĵetos ke in-- vi volas nur haveno kiu super 94 00:05:19,810 --> 00:05:21,550 al iuj malalta nivelo lingvo. 95 00:05:21,550 --> 00:05:26,090 Kio estas bona pri R estas, ke iam vi estas farita prototipado ĝin, vi povas kuri C ++, 96 00:05:26,090 --> 00:05:29,510 aŭ Fortran, aŭ pri iu el tiuj malsupra ebenaĵoj rekte en R. 97 00:05:29,510 --> 00:05:32,320 Do tio estas vere malvarmeta trajto cxirkaux R, 98 00:05:32,320 --> 00:05:35,930 se vi vere zorgas pri la optimización punkto. 99 00:05:35,930 --> 00:05:39,490 >> Kaj estas ankaŭ vere bonaj por TTT visualizaciones. 100 00:05:39,490 --> 00:05:43,530 Do D3.js, ekzemple, estas Mi supozas alian seminarion 101 00:05:43,530 --> 00:05:45,130 ke ni prezentis hodiaŭ. 102 00:05:45,130 --> 00:05:48,510 Kaj tiu estas vere imponega por fari interaktiva visualizaciones. 103 00:05:48,510 --> 00:05:54,460 Kaj D3.js supozas ke vi havas ia datumoj al esti grafike 104 00:05:54,460 --> 00:05:58,080 kaj R estas granda maniero de povi fari la analizo de datumoj antaŭ eksporti ĝin 105 00:05:58,080 --> 00:06:04,220 super al D3.js aŭ eĉ nur kuri D3.js ordonas en R sin, 106 00:06:04,220 --> 00:06:08,240 tiel kiel ĉiuj tiuj aliaj bibliotekoj tiel. 107 00:06:08,240 --> 00:06:13,041 >> Do kiu estis ĝuste la enkonduko de kio estas R kaj kial vi eble uzos ĝin. 108 00:06:13,041 --> 00:06:14,790 Do espereble, mi konvinkis vin ion 109 00:06:14,790 --> 00:06:18,460 pri nur provas vidi kion estas. 110 00:06:18,460 --> 00:06:23,930 Do mi iros por antaŭeniri kaj trairu iuj fundamentoj pri R celoj 111 00:06:23,930 --> 00:06:26,150 kaj kion vi povas vere fari. 112 00:06:26,150 --> 00:06:29,690 >> Do jen estas nur faskon de math komandoj. 113 00:06:29,690 --> 00:06:35,000 Do diru you're-- vi volas konstrui lingvo mem kaj vi nur volas 114 00:06:35,000 --> 00:06:38,080 havi multajn malsamajn ilojn. 115 00:06:38,080 --> 00:06:42,520 Omnaspeca operacio vi pensas vi ŝatus volas estas sufiĉe tre tuj estos en R. 116 00:06:42,520 --> 00:06:44,150 >> Do jen estas 2 plus 2. 117 00:06:44,150 --> 00:06:46,090 Ĉi tie estas 2 fojoj pi. 118 00:06:46,090 --> 00:06:51,870 R havas faskon de primitivaj konstantoj ke vi ofte uzas kiel pi, kaj. 119 00:06:51,870 --> 00:06:56,230 >> Kaj poste, jen 7 plus runif, do runif de 1. 120 00:06:56,230 --> 00:07:02,450 Tiu estas funkcio kiu estas generas unu hazarda uniformo de 0 al 1. 121 00:07:02,450 --> 00:07:04,400 Kaj tiam tie estas 3 al la potenco de 4. 122 00:07:04,400 --> 00:07:06,430 Ekzistas kvadrataj radikoj. 123 00:07:06,430 --> 00:07:07,270 >> Jen la protokolo. 124 00:07:07,270 --> 00:07:14,500 Do ensaluti faros bazo eksponenta per sin. 125 00:07:14,500 --> 00:07:18,337 Kaj tiam, se vi specifas bazo, tiam Vi povas fari kion ajn bazo vi deziras. 126 00:07:18,337 --> 00:07:19,920 Kaj tiam tie estas kelkaj aliaj komandoj. 127 00:07:19,920 --> 00:07:22,180 Do vi havas 23 mod 2. 128 00:07:22,180 --> 00:07:24,910 Tiam vi havas la reston. 129 00:07:24,910 --> 00:07:27,110 Tiam vi havas sciencan skribmaniero se vi ankaŭ 130 00:07:27,110 --> 00:07:34,060 volas fari nur pli kaj pli komplikaj aferoj. 131 00:07:34,060 --> 00:07:37,320 >> Do jen estas farita. 132 00:07:37,320 --> 00:07:40,830 Do tipaj taskoj en R estas farita kun sago 133 00:07:40,830 --> 00:07:43,440 do ĝi estas malpli ol kaj poste la streketo. 134 00:07:43,440 --> 00:07:47,250 Do jen mi simple asignanta 3 al la variablo val. 135 00:07:47,250 --> 00:07:50,160 >> Kaj tiam mi presanta el val kaj tiam ĝi presas el tri. 136 00:07:50,160 --> 00:07:53,920 Apriore en R interpretisto, ĝi presos tion por vi 137 00:07:53,920 --> 00:07:57,280 tial vi ne devas specifi presi val ajna tempo vi deziras presi ion. 138 00:07:57,280 --> 00:08:00,200 Vi povas simple fari val kaj tiam ĝi faros ke vin. 139 00:08:00,200 --> 00:08:04,380 >> Ankaŭ, vi povas uzi egalas teknike kiel asigno operatoro. 140 00:08:04,380 --> 00:08:07,190 Estas malpeza subtilaĵoj inter uzi la sagon 141 00:08:07,190 --> 00:08:10,730 operatoro kaj la egalaj operatoro por faritaj. 142 00:08:10,730 --> 00:08:15,470 Plejparte per konvencio, ĉiuj Mi nur uzu la sago operatoro. 143 00:08:15,470 --> 00:08:21,850 >> Kaj tie, mi asignanta ĉi oblikva skribmaniero nomata 1 colon 6. 144 00:08:21,850 --> 00:08:26,010 Tiu generas vektora de 1 ĝis 6. 145 00:08:26,010 --> 00:08:29,350 Kaj ĉi tio vere bela ĉar tiam vi ĵus atribui la vektoro al val 146 00:08:29,350 --> 00:08:34,270 kaj kiu funkcias per sin. 147 00:08:34,270 --> 00:08:37,799 >> Do tiu estas jam iranta de unu single-- tre intuicia datumoj 148 00:08:37,799 --> 00:08:41,070 strukturo de ĵus duobla de iu tipo de tipo en vektora 149 00:08:41,070 --> 00:08:45,670 kaj kiu kolektos cxiujn la skalaraj valoroj por vi. 150 00:08:45,670 --> 00:08:50,770 Do post iri de skalaro, vi havas R celoj kaj ĉi estas vektora. 151 00:08:50,770 --> 00:08:55,610 Vektoro estas omnaspeca Kolekto de la sama tipo. 152 00:08:55,610 --> 00:08:58,150 Do ĉi tie estas faskon de vektoroj. 153 00:08:58,150 --> 00:08:59,800 >> Do tiu estas nombraj. 154 00:08:59,800 --> 00:09:02,440 Numera estas R maniero diri duobla. 155 00:09:02,440 --> 00:09:07,390 Kaj tiel implicite, ĉiu numero estos duobla. 156 00:09:07,390 --> 00:09:13,150 >> Do se vi havas c de 1,1, 3, negativa 5.7, la c estas funkcio. 157 00:09:13,150 --> 00:09:16,760 Ĉi concatena ĉiuj tri nombroj en vector. 158 00:09:16,760 --> 00:09:19,619 Kaj jen be-- do se vi rimarkos 3 per sin, 159 00:09:19,619 --> 00:09:21,910 Normale vi supozus ke ĉi tio estas kiel entjero, 160 00:09:21,910 --> 00:09:25,050 sed ĉar ĉiuj vektoroj estas la sama tipo, 161 00:09:25,050 --> 00:09:28,660 ĉi estas vektora de duobloj aŭ nombraj en tiu kazo. 162 00:09:28,660 --> 00:09:34,920 >> rnorm estas funkcio kiu generas norma normala variables-- 163 00:09:34,920 --> 00:09:36,700 aŭ norma normala valoroj. 164 00:09:36,700 --> 00:09:38,360 Kaj mi preciziganta du el ili. 165 00:09:38,360 --> 00:09:43,840 Do mi faras rnorm 2, atribuante ke al devs, kaj tiam mi presi ekstere devs. 166 00:09:43,840 --> 00:09:47,350 Do tiuj estas nur du hazarda normalaj valoroj. 167 00:09:47,350 --> 00:09:50,060 >> Kaj tiam ints se vi faros vi zorgas pri entjeroj. 168 00:09:50,060 --> 00:09:54,650 Do ĉi tiu estas nur cxirkaux memoro atribuo kaj ŝparante memoro grandeco. 169 00:09:54,650 --> 00:10:01,460 Do vi devus alfiksus via nombroj per la ĉefurbon L. 170 00:10:01,460 --> 00:10:04,170 >> Ĝenerale, tiu estas R historia skribmaniero 171 00:10:04,170 --> 00:10:06,940 por iu nomita longa entjero. 172 00:10:06,940 --> 00:10:09,880 Do plejofte, vi esti kontraktanta kun duobloj. 173 00:10:09,880 --> 00:10:15,180 Kaj se vi iam volas poste sur optimizar via kodo, 174 00:10:15,180 --> 00:10:18,110 Vi povas simple aldoni tiujn L's poste aŭ dum ĝi 175 00:10:18,110 --> 00:10:22,280 se vi ŝatas precognitive pri kio vi faros tiuj variabloj. 176 00:10:22,280 --> 00:10:25,340 177 00:10:25,340 --> 00:10:26,890 >> Do jen estas karaktero vectorial. 178 00:10:26,890 --> 00:10:31,440 Do, denove, mi concatenando tri kordoj tiu tempo. 179 00:10:31,440 --> 00:10:36,230 Rimarku ke duoblaj kordoj kaj sola kordoj estas samaj en R. 180 00:10:36,230 --> 00:10:41,000 Do mi havas Arthur kaj Marvin aj kaj tiel kiam mi presi ĝin, ĉiuj ili 181 00:10:41,000 --> 00:10:43,210 tuj montras duoblan kordoj. 182 00:10:43,210 --> 00:10:45,880 Kaj se vi ankaŭ volas inkludi la duobla aŭ sola kordo 183 00:10:45,880 --> 00:10:50,070 en via karakteroj, tiam vi povas ĉu alterni viajn ŝnurojn. 184 00:10:50,070 --> 00:10:53,540 >> Do Marvin informoj por la dua elemento, tiu estas 185 00:10:53,540 --> 00:10:56,380 tuj show-- vin Nur oni duoblaj kordoj 186 00:10:56,380 --> 00:10:59,050 kaj tiam sola kordo tial tiu estas alterna. 187 00:10:59,050 --> 00:11:04,040 Alie, se vi volas uzi duobla kordo operatoro en duobla kordo 188 00:11:04,040 --> 00:11:07,090 kiam vi deklarante ĝin, tiam Vi nur uzu la ellasilo operatoro. 189 00:11:07,090 --> 00:11:10,600 Do vi faru la backslash duoblaj kordoj. 190 00:11:10,600 --> 00:11:13,330 >> Kaj fine, ni ankaŭ havas logikan vektoroj. 191 00:11:13,330 --> 00:11:15,890 Do logical-- tiel VERA kaj Malvero, kaj ili estas 192 00:11:15,890 --> 00:11:18,880 tuj estos ĉiuj majuskloj. 193 00:11:18,880 --> 00:11:22,370 Kaj tiam, denove, mi concatenando ilin kaj tiam asignanta ilin al bools. 194 00:11:22,370 --> 00:11:24,590 Do bools tuj montri vi VERA, FALSA kaj VERA. 195 00:11:24,590 --> 00:11:28,280 196 00:11:28,280 --> 00:11:31,620 >> Do jen vectorized indeksado. 197 00:11:31,620 --> 00:11:34,870 Do en la komenco, mi am prenante function-- 198 00:11:34,870 --> 00:11:39,230 ĉi tio nomiĝas sequence-- sekvenco de 2 ĝis 12. 199 00:11:39,230 --> 00:11:42,490 Kaj mi ferios dum sekvenco per 2. 200 00:11:42,490 --> 00:11:46,660 Do ĝi estas tuj faros 2, 4, 6, 8, 10 kaj 12. 201 00:11:46,660 --> 00:11:50,080 Kaj poste, mi indeksado akiri la tria ero. 202 00:11:50,080 --> 00:11:55,770 >> Do unu afero teni en menso estas ke R indeksoj startante de 1. 203 00:11:55,770 --> 00:12:00,550 Do vals 3 tuj donos vi la tria ero. 204 00:12:00,550 --> 00:12:04,580 Tio estas ia malsama de aliaj lingvoj kie startas de nulo. 205 00:12:04,580 --> 00:12:09,780 Do en C aŭ C ++, ekzemple, ke vi estas tuj ricevas la kvara ero. 206 00:12:09,780 --> 00:12:13,280 >> Kaj tie estas la vals de 3 al 5. 207 00:12:13,280 --> 00:12:16,030 Do unu afero estas vere malvarmeta estas ke vi 208 00:12:16,030 --> 00:12:20,410 povas generi temporal variablo interne kaj tiam simple uzi ilin sur la muŝo. 209 00:12:20,410 --> 00:12:21,960 Do jen estas 3 al 5. 210 00:12:21,960 --> 00:12:25,070 Do mi generante vektoro 3, 4, kaj 5 kaj tiam 211 00:12:25,070 --> 00:12:29,700 Mi indeksante akiri la tria, kvara kaj kvina elementoj. 212 00:12:29,700 --> 00:12:32,280 >> Do simile, vi povas abstrakta ĉi al nur faru 213 00:12:32,280 --> 00:12:35,280 omnaspeca vektoro kiu donas al vi indeksado. 214 00:12:35,280 --> 00:12:40,050 Do jen estas la vals kaj tiam la unua, tria kaj sesa elementoj. 215 00:12:40,050 --> 00:12:42,800 Kaj tiam, se vi volas fari komplemento, 216 00:12:42,800 --> 00:12:45,210 tial vi nur faru la minus poste kaj tio estos 217 00:12:45,210 --> 00:12:48,600 doni al vi ĉion, kio ne estas la unua, tria, aŭ sesa ero. 218 00:12:48,600 --> 00:12:51,590 Do tiu estos 4, 8, kaj 10. 219 00:12:51,590 --> 00:12:54,380 >> Kaj se vi volas ricevi eĉ pli progresinta, 220 00:12:54,380 --> 00:12:57,610 vi povas concatenate Buleaj vektoroj. 221 00:12:57,610 --> 00:13:05,210 Do tiu indico tuj donos vin ĉi Bulea vektoro de longo 6. 222 00:13:05,210 --> 00:13:07,280 Do rep VERA komo 3. 223 00:13:07,280 --> 00:13:09,680 Ĉi ripetos VERA trifoje. 224 00:13:09,680 --> 00:13:12,900 Do ĉi donos al vi vektora VERA, VERO, VERA. 225 00:13:12,900 --> 00:13:17,470 >> rep FALSA 4-- tiu tuj donos vin vektora de Malvero, Malvero, Malvero, Malvero. 226 00:13:17,470 --> 00:13:21,280 Kaj tiam c tuj concatenate tiuj du Booleans kune. 227 00:13:21,280 --> 00:13:24,090 Do vi estas iranta akiri tri TRUEs kaj tiam kvar FALSEs. 228 00:13:24,090 --> 00:13:28,460 >> Por ke kiam vi indekson vals, vi estas tuj akiri la VERO, VERO, VERA. 229 00:13:28,460 --> 00:13:31,420 Por ke tuj diru jes, Mi volas tiuj tri elementoj. 230 00:13:31,420 --> 00:13:33,520 Kaj tiam Malvero, Malvero, Malvero, Malvero tuj 231 00:13:33,520 --> 00:13:37,140 diri ne, mi ne volas tiujn elementojn Tuj kiam ne tuj redonos ilin. 232 00:13:37,140 --> 00:13:41,490 >> Kaj mi supozas ke estas reale tajperaro tie ĉar tiu diras ripeto VERA 3 233 00:13:41,490 --> 00:13:47,990 kaj ripeti FALSA 4, kaj teknike, vi nur havas ses elementoj tiel ripeti Malvero, 234 00:13:47,990 --> 00:13:50,470 ĝi devus esti ripeto FALSA 3. 235 00:13:50,470 --> 00:13:55,260 Mi kredas R estas ankaŭ inteligenta sufiĉa tia ke se vi simple entajpi 4 tien, tiam 236 00:13:55,260 --> 00:13:56,630 ĝi ne falsado eksteren. 237 00:13:56,630 --> 00:13:58,480 Ĝi ĵus donas al vi ĉi tiun valoron. 238 00:13:58,480 --> 00:14:00,970 Do ĝi malebligos preterlasu ke kvara Malvero. 239 00:14:00,970 --> 00:14:05,310 240 00:14:05,310 --> 00:14:09,270 >> Do jen vectorized farita. 241 00:14:09,270 --> 00:14:15,480 Do set.seed-- ĉi simple fiksas la semo por pseudoaleatorios nombroj. 242 00:14:15,480 --> 00:14:20,110 Do mi opcio la semon al 42, signifante ke se mi generi 243 00:14:20,110 --> 00:14:22,950 tri hazarda normalan valoroj, kaj tiam, se vi 244 00:14:22,950 --> 00:14:27,400 kuri set.seed sur via propra komputilo uzanta la saman valoron 42, 245 00:14:27,400 --> 00:14:30,990 tiam vi ankaŭ preni la samaj tri hazarda normals. 246 00:14:30,990 --> 00:14:33,411 >> Do ĉi tiu estas vere bona por reproducibilidad. 247 00:14:33,411 --> 00:14:35,910 Kutime, kiam vi faras iun ia scienca analizo, 248 00:14:35,910 --> 00:14:37,230 vi volus, por devigadi la semo. 249 00:14:37,230 --> 00:14:41,270 Tiel aliaj sciencistoj povas ĝuste reprodukti la ĝusta sama kodo vi havas 250 00:14:41,270 --> 00:14:44,790 faris ĉar ili havos la ĝustan sama hazarda variablo that-- hazarda 251 00:14:44,790 --> 00:14:47,270 valoroj kiujn vi prenis el tiel. 252 00:14:47,270 --> 00:14:49,870 253 00:14:49,870 --> 00:14:53,910 >> Kaj tial la vectorized asigno tie montras la vals 1 al 2. 254 00:14:53,910 --> 00:14:59,290 Do necesas la unuaj du elementoj de vals kaj tiam asignas ilin al 0. 255 00:14:59,290 --> 00:15:03,940 Kaj tiam, vi ankaŭ povas simple fari la simila afero kun la Booleans. 256 00:15:03,940 --> 00:15:09,340 >> Do vals estas ne egala al 0-- tiu volo donu vin vektora Malvero, Malvero, VERA 257 00:15:09,340 --> 00:15:10,350 en tiu kazo. 258 00:15:10,350 --> 00:15:13,770 Kaj poste, ĝi estas dironta ajnan de tiuj indeksoj ke estis vera, 259 00:15:13,770 --> 00:15:15,270 tiam okazos al atribui ke al 5. 260 00:15:15,270 --> 00:15:18,790 Do necesas la tria ero tie kaj tiam asignas ĝin al 5. 261 00:15:18,790 --> 00:15:22,300 >> Kaj tiu estas vere bela kompare malalta nivelo lingvoj 262 00:15:22,300 --> 00:15:25,560 kie oni devas uzi por masxojn fari ĉion ĉi vectorized stuff 263 00:15:25,560 --> 00:15:30,281 ĉar estas nur tre intuicia Kaj ĝi estas sola unu-Liner. 264 00:15:30,281 --> 00:15:32,030 Kaj kio estas granda pri vectorized skribmaniero 265 00:15:32,030 --> 00:15:37,020 estas kiu en R, jen estas ia korpigita por ke ili estas preskaŭ tiel rapida 266 00:15:37,020 --> 00:15:42,490 kiel faras en malalta nivelo lingvo kiel kontraste al fari por buklo en R 267 00:15:42,490 --> 00:15:46,317 kaj tiam havante ŝin fari la dinamika indeksado mem. 268 00:15:46,317 --> 00:15:48,900 Kaj tio estos malrapida ol faranta tian vectorized afero 269 00:15:48,900 --> 00:15:55,950 kie povas fari ĝin en paralela, kie ĝi estas fari ĝin en sekvante esence. 270 00:15:55,950 --> 00:15:58,650 >> Do jen estas vectorized operacioj. 271 00:15:58,650 --> 00:16:04,920 Do mi generante valoro 1 al 3, asignanta ke vec1, 3 al 5, vec2, 272 00:16:04,920 --> 00:16:05,950 aldonante ilin kune. 273 00:16:05,950 --> 00:16:11,490 Ĝi aldonas ilin komponanto-saĝa tiel ĝi estas 1 plus 3, 2 plus 4, kaj tiel plu. 274 00:16:11,490 --> 00:16:13,330 >> vec1 fojojn vec2. 275 00:16:13,330 --> 00:16:16,110 Ĉi multiplikas la du valoroj komponanto saĝa. 276 00:16:16,110 --> 00:16:21,830 Do estas 1 fojoj 3, 2 fojojn 4 kaj tiam 3 fojoj 5. 277 00:16:21,830 --> 00:16:28,250 >> Kaj tiam, simile oni povas ankaŭ fari comparisons-- logika komparoj. 278 00:16:28,250 --> 00:16:33,640 Do estas FALSA FALSA VERA en ĉi kazo ĉar 1 ne estas pli granda ol 3, 279 00:16:33,640 --> 00:16:35,920 2 estas ne pli granda ol 4. 280 00:16:35,920 --> 00:16:41,160 Ĉi tiu estas, mi supozas, alia tajperaro, 3 nepre ne estas pli granda ol 5. 281 00:16:41,160 --> 00:16:41,660 Yeah. 282 00:16:41,660 --> 00:16:45,770 Do vi povas simple fari ĉiuj tiuj simplaj operacioj 283 00:16:45,770 --> 00:16:48,350 ĉar ilia heredita de la klasoj mem. 284 00:16:48,350 --> 00:16:51,110 285 00:16:51,110 --> 00:16:52,580 >> Do kiu estis ĝuste la vektoro. 286 00:16:52,580 --> 00:16:56,530 Kaj tio estas speco de la plej fundamentaj R objekto ĉar donita vektora, 287 00:16:56,530 --> 00:16:59,170 vi povas konstrui pli antaŭitaj celoj. 288 00:16:59,170 --> 00:17:00,560 >> Do jen matrico. 289 00:17:00,560 --> 00:17:05,030 Tio estas esence la abstraktado de kia matrico estas sin. 290 00:17:05,030 --> 00:17:10,099 Do en ĉi tiu kazo, ĝi estas tri malsamaj vektoroj, kie ĉiu estas kolumna, 291 00:17:10,099 --> 00:17:12,710 aŭ vi povas konsideri ĝin kiel ĉiu estas vico. 292 00:17:12,710 --> 00:17:18,250 >> Do mi stokante matricon de 1 al 9 kaj tiam mi preciziganta 3 vicoj. 293 00:17:18,250 --> 00:17:23,364 Do 1 al 9 donos vin vektora 1, 2, 3, 4, 5, 6, kaj la tuta vojo ĝis 9. 294 00:17:23,364 --> 00:17:29,250 >> Unu afero ankaŭ teni en menso estas ke R tendencas valoroj en kolumno-granda formato. 295 00:17:29,250 --> 00:17:34,160 Do alivorte, kiam vi vidos 1 al 9, ĝi tuj stoki them-- 296 00:17:34,160 --> 00:17:36,370 ĝi okazas al esti 1, 2, 3 en la unua kolumno, 297 00:17:36,370 --> 00:17:38,510 kaj tiam ĝi faros 4, 5, 6 en la dua kolumno, 298 00:17:38,510 --> 00:17:41,440 kaj tiam 7, 8, 9 en la tria kolumno. 299 00:17:41,440 --> 00:17:45,570 >> Kaj jen kelkaj aliaj komunaj funkcioj povas uzi. 300 00:17:45,570 --> 00:17:49,650 Do nebrila mato, ĉi donos vin la dimensioj de la matrico. 301 00:17:49,650 --> 00:17:52,620 Ĝi estas tuj revenos al vi vektoro de la dimensio. 302 00:17:52,620 --> 00:17:55,580 Do en ĉi tiu kazo, ĉar nia matrico estas 3 por 3, 303 00:17:55,580 --> 00:18:01,900 ĝi estas tuj donos al vi nombraj vektora tio 3 3. 304 00:18:01,900 --> 00:18:05,270 >> Kaj tie estas ĝuste montrante matrica multipliko. 305 00:18:05,270 --> 00:18:11,970 Do kutime, se vi nur faru asterisk-- tiel mato asterisko mat-- 306 00:18:11,970 --> 00:18:15,380 ĉi tiu tuj estos komponanto-saĝa operacio 307 00:18:15,380 --> 00:18:17,300 aŭ kion nomas la Hadamard produkto. 308 00:18:17,300 --> 00:18:21,310 Do ĝi estas tuj faros ĉiu elemento komponanto-saĝa. 309 00:18:21,310 --> 00:18:23,610 Tamen, se vi volas matrico multiplication-- 310 00:18:23,610 --> 00:18:29,380 tial multiplikante la unua vico fojojn la dua matrico unua kolumno 311 00:18:29,380 --> 00:18:34,510 kaj tiel on-- vi uzus tiu procento operacio. 312 00:18:34,510 --> 00:18:38,110 >> Kaj t de mato estas nur operacio por transpono. 313 00:18:38,110 --> 00:18:42,590 Do mi celas kapti la transpono en la matrico, multipliki ĝin per la matrico 314 00:18:42,590 --> 00:18:43,090 mem. 315 00:18:43,090 --> 00:18:45,006 Kaj tiam tuj revenos al vi alian 3 316 00:18:45,006 --> 00:18:50,700 per 3 matrico ekmontrigxo la produkto vi volus. 317 00:18:50,700 --> 00:18:53,750 >> Kaj tiel tio estis matrico. 318 00:18:53,750 --> 00:18:56,020 Ĉi tie estas kio nomas datuma kadro. 319 00:18:56,020 --> 00:19:00,780 Datumo kadro vi povas pensi pri kiel matrico, sed ĉiu kolumno mem 320 00:19:00,780 --> 00:19:02,990 tuj esti de malsama tipo. 321 00:19:02,990 --> 00:19:07,320 >> Do kio estas vere malvarmeta pri datumoj kadroj estas kiu en datumoj analizo mem, 322 00:19:07,320 --> 00:19:11,260 vi tuj havos tiun tutan heterogenaj datumoj kaj ĉiuj tiuj vere 323 00:19:11,260 --> 00:19:15,640 senorda aferoj kie ĉiu kolono si povas esti de malsamaj tipoj. 324 00:19:15,640 --> 00:19:21,460 Do jen mi estas diranta krei datumo kadro, fari ints de 1 al 3, 325 00:19:21,460 --> 00:19:24,750 kaj tiam ankaŭ havi karakteron vektoro. 326 00:19:24,750 --> 00:19:28,470 Do mi povos indekso tra ĉiu el tiuj kolumnoj 327 00:19:28,470 --> 00:19:30,930 kaj tiam mi prenos la valoroj mem. 328 00:19:30,930 --> 00:19:34,370 Kaj vi povas ankaŭ fari ian de operacioj en datumoj kadroj. 329 00:19:34,370 --> 00:19:38,040 Kaj plejparto de la tempo, kiam vi estas faranta analizon de datumoj aŭ ian 330 00:19:38,040 --> 00:19:42,042 de preprocesamiento, vi estos laborante kun tiuj datumstrukturoj 331 00:19:42,042 --> 00:19:44,250 kie ĉiu kolumno tuj esti de malsama tipo. 332 00:19:44,250 --> 00:19:47,880 333 00:19:47,880 --> 00:19:52,970 >> Fine, do ĉi tiuj estas esence nur la kvar esencaj celoj en R. Listo 334 00:19:52,970 --> 00:19:55,820 simple kolekti ajnan aliaj celoj vi deziras. 335 00:19:55,820 --> 00:20:00,130 Do estos stoki ĉi en unu variablo kiu vi povas facile aliri. 336 00:20:00,130 --> 00:20:02,370 >> Do jen, mi ferios dum lerta. 337 00:20:02,370 --> 00:20:04,460 Mi estas diranta aferojn egalas 3. 338 00:20:04,460 --> 00:20:08,060 Do mi nepre akiros unu elemento en la listo, kaj tio nomiĝas stuff, 339 00:20:08,060 --> 00:20:10,570 kaj ĝin tuj havos la valoron 3. 340 00:20:10,570 --> 00:20:13,140 >> Mi ankaŭ povas krei matricon. 341 00:20:13,140 --> 00:20:17,970 Do tiu estas 1 ĝis 4 kaj fino vico egalas 2, do a 2 per 2 matrico. 342 00:20:17,970 --> 00:20:20,270 Ankaŭ en la lerta kaj ĝi nomiĝas mato. 343 00:20:20,270 --> 00:20:24,690 moreStuff, signoĉenon, kaj eĉ alia lerta en oni sama. 344 00:20:24,690 --> 00:20:27,710 >> Do tiu estas listo tio estas 5 kaj urso. 345 00:20:27,710 --> 00:20:30,990 Do ĝi havas la valoron 5 kaj ĝi havas la signoĉeno urso 346 00:20:30,990 --> 00:20:32,710 kaj ĝi estas lerta ene listo. 347 00:20:32,710 --> 00:20:35,965 Do vi povas havi tiujn rekursiaj aferoj kie 348 00:20:35,965 --> 00:20:38,230 vi havas another-- oni tajpi ene la tipo. 349 00:20:38,230 --> 00:20:41,420 Do simile, vi povas havi matrico ene alia matrico ktp. 350 00:20:41,420 --> 00:20:44,264 Kaj lerta estas ĝuste bona vojo kolekti kaj agregi 351 00:20:44,264 --> 00:20:45,430 ĉiuj tiuj malsamaj celoj. 352 00:20:45,430 --> 00:20:50,210 353 00:20:50,210 --> 00:20:57,150 >> Kaj fine, ĉi tie estas nur helpi en kazo ĉi ĵus transiris tre rapide. 354 00:20:57,150 --> 00:21:01,350 Do anytime vi estas konfuzita pri ia funkcio, 355 00:21:01,350 --> 00:21:03,510 Vi povas fari helpon de tiu funkcio. 356 00:21:03,510 --> 00:21:07,120 Do vi povas fari helpon matrico aŭ demandosigno matrico. 357 00:21:07,120 --> 00:21:11,430 Kaj helpo kaj la demandosigno estas nur stenografio por la sama aĵo 358 00:21:11,430 --> 00:21:13,040 Do oni alias. 359 00:21:13,040 --> 00:21:16,820 >> lm estas funkcio kiu ĝuste faras lineara modelo. 360 00:21:16,820 --> 00:21:20,340 Sed se vi nur havas neniun ideon kiel tio verkoj, vi povas simple fari helpon de lm 361 00:21:20,340 --> 00:21:24,610 kaj tio donos al vi iuj speco de dokumentado kiu 362 00:21:24,610 --> 00:21:27,960 similas kiel kiel man-paĝon Unikso, kie 363 00:21:27,960 --> 00:21:34,210 vi havas mallongan priskribon de kio jes, kaj kion lia argumentoj estas, 364 00:21:34,210 --> 00:21:38,850 kio revenas, kaj ĝuste konsiletoj sur kiel por uzi ĝin, kaj iuj ekzemploj ankaŭ. 365 00:21:38,850 --> 00:21:41,680 366 00:21:41,680 --> 00:21:52,890 >> Do lasu min iri antaŭen kaj spektaklo iuj demo de uzante R. OK. 367 00:21:52,890 --> 00:21:55,470 Do mi iris tre rapide nur la datumoj 368 00:21:55,470 --> 00:21:59,440 strukturoj kaj ia la op-- iuj de la operacioj. 369 00:21:59,440 --> 00:22:02,960 Jen iuj funkcioj. 370 00:22:02,960 --> 00:22:06,750 >> Do jen mi simple irante difini funkcio. 371 00:22:06,750 --> 00:22:09,970 Do mi ankaŭ uzas asigno operatoro tie, 372 00:22:09,970 --> 00:22:12,610 kaj tiam mi estas diranta deklari ĝin kiel funkcio. 373 00:22:12,610 --> 00:22:14,140 Kaj ĝi prenas la valoron x. 374 00:22:14,140 --> 00:22:18,210 Do tiu estas ajna valoro vi volas kaj mi tuj revenos x mem. 375 00:22:18,210 --> 00:22:20,840 Do tiu estas la identa funkcio. 376 00:22:20,840 --> 00:22:23,670 >> Kaj kio estas malvarmeta pri tiu kompare al aliaj lingvoj 377 00:22:23,670 --> 00:22:26,330 kaj alia malalta-nivelo lingvoj estas ke x 378 00:22:26,330 --> 00:22:29,350 eblas de ajna tipo mem kaj ĝi devos reveni al tiu tipo. 379 00:22:29,350 --> 00:22:35,251 Do vi povas imagine-- do ni mi ĵus kuras ĉi rapide. 380 00:22:35,251 --> 00:22:35,750 Pardonu. 381 00:22:35,750 --> 00:22:40,300 >> Do unu aferon mi devas mencii ankaŭ estas ke tiu redaktilo Mi uzas 382 00:22:40,300 --> 00:22:41,380 nomas rstudio. 383 00:22:41,380 --> 00:22:44,389 Jen kion nomas IDE. 384 00:22:44,389 --> 00:22:46,180 Kaj unu afero estas bonege pri tiu 385 00:22:46,180 --> 00:22:51,500 estas ke ĝi korpigas multajn el la tion vi volas fari en R per sin 386 00:22:51,500 --> 00:22:53,180 nur tre intuicie. 387 00:22:53,180 --> 00:22:55,550 >> Do jen estas interpretilo konzolo. 388 00:22:55,550 --> 00:23:02,160 Do simile, vi povas ankaŭ atingi ĉi konzolo krudan nur faranta majuskla R. 389 00:23:02,160 --> 00:23:05,630 Kaj tiu estas ĝuste la samon kiel la konzolo. 390 00:23:05,630 --> 00:23:12,210 Do mi povas nur faru identigilo funkcio x, x, x. 391 00:23:12,210 --> 00:23:16,130 Kaj then-- kaj tiam ke estos bone mem. 392 00:23:16,130 --> 00:23:19,200 393 00:23:19,200 --> 00:23:21,740 >> Do rstudio estas granda ĉar ĝi havas la konzolon. 394 00:23:21,740 --> 00:23:25,360 Ĝi ankaŭ havas la dokumentoj Vi ŝatus kuri plu. 395 00:23:25,360 --> 00:23:28,629 Kaj tiam ĝi havas iuj variabloj ke vi povas vidi en medioj. 396 00:23:28,629 --> 00:23:30,420 Kaj tiam, se vi havas fari intrigoj, tiam vi 397 00:23:30,420 --> 00:23:33,730 povas simple vidi ŝin tie, kontraste al administri ĉiuj tiuj malsamaj fenestroj 398 00:23:33,730 --> 00:23:35,940 aparte. 399 00:23:35,940 --> 00:23:40,530 >> Mi fakte persone uzas Vim, sed mi sentas rstudio estas bonega simple 400 00:23:40,530 --> 00:23:44,640 por interesigi bona ideo de kiel uzi R. Kutime, 401 00:23:44,640 --> 00:23:47,040 kiam vi provas lerni iun novan taskon, 402 00:23:47,040 --> 00:23:49,590 vi ne volas manipuli tro da aferoj samtempe. 403 00:23:49,590 --> 00:23:53,120 Do R estas nur very-- rstudio estas tre bona maniero de lernado R 404 00:23:53,120 --> 00:23:56,760 sen devi trakti ĉiuj tiuj aliaj aĵoj. 405 00:23:56,760 --> 00:23:58,600 >> Do jen mi kurante identigilo saluton. 406 00:23:58,600 --> 00:24:00,090 Ĉi revenas saluton. 407 00:24:00,090 --> 00:24:01,740 identigilo 123. 408 00:24:01,740 --> 00:24:04,610 Jen estas vektoro de entjeroj. 409 00:24:04,610 --> 00:24:08,620 Do simile, ĉar vi povas preni ajnan ian valoron, 410 00:24:08,620 --> 00:24:16,060 Vi povas fari reveni identigilo de x tiom revenas 1234 kaj 5. 411 00:24:16,060 --> 00:24:22,210 >> Kaj lasu min nur montras al vi, ke ĉi estas ja entjero. 412 00:24:22,210 --> 00:24:28,800 Kaj simile, se vi faras klason identigilo x, ĝi estas tuj estos entjero. 413 00:24:28,800 --> 00:24:34,170 Kaj tiam, vi povas ankaŭ kompari la du kaj ĝi estas vera. 414 00:24:34,170 --> 00:24:38,350 Do mi kontrolanta se identigilo de x egalas egaluloj x kaj avizo 415 00:24:38,350 --> 00:24:39,760 ke ĝi donas al vi du TRUEs. 416 00:24:39,760 --> 00:24:44,280 Do tiu estas ne diras estas la du celoj identaj, 417 00:24:44,280 --> 00:24:46,845 sed estas ĉiu de la eniroj ene la vektoroj identaj. 418 00:24:46,845 --> 00:24:50,000 419 00:24:50,000 --> 00:24:52,090 >> Jen bounded.compare. 420 00:24:52,090 --> 00:24:58,470 Do ĉi tiu estas iomete pli komplika en kiu havas se kondiĉo kaj alie 421 00:24:58,470 --> 00:25:00,960 kaj tiam ĝi prenas du argumentoj ĉiufoje. 422 00:25:00,960 --> 00:25:02,640 Do x estas de ajna tipo. 423 00:25:02,640 --> 00:25:06,280 Kaj mi diras ĉi dua argumento estas. 424 00:25:06,280 --> 00:25:08,380 Tio povas esti io tiel. 425 00:25:08,380 --> 00:25:12,490 Sed implicite, ĝi estas tuj prenos 5 Se vi ne specifas ion. 426 00:25:12,490 --> 00:25:16,730 >> Do jen mi intencas diri se x estas pli granda ol unu. 427 00:25:16,730 --> 00:25:19,220 Do, se mi ne specifi, ĝi diras se x estas pli granda ol 5, 428 00:25:19,220 --> 00:25:20,470 tiam Mi tuj revenos vera. 429 00:25:20,470 --> 00:25:23,230 alie, mi tuj revenos Malvero. 430 00:25:23,230 --> 00:25:24,870 Do lasu min iri antaŭen kaj difini ĉi. 431 00:25:24,870 --> 00:25:30,600 432 00:25:30,600 --> 00:25:34,550 >> Kaj nun mi iras al kuri bounded.compare 3. 433 00:25:34,550 --> 00:25:39,150 Do ĝi diras estas 3 malpli than-- estas 3 pli granda ol 5. 434 00:25:39,150 --> 00:25:41,830 Ne, estas ne tiom Malvero. 435 00:25:41,830 --> 00:25:46,550 >> Kaj bounded.compare 3 kaj Mi iras kompari ĝin uzante egalas 2. 436 00:25:46,550 --> 00:25:50,700 Do nun mi diras jes, nun mi volas esti io alia. 437 00:25:50,700 --> 00:25:52,750 Do mi intencis diri al, vi devas esti 2. 438 00:25:52,750 --> 00:25:56,640 >> Mi povas ĉu fari tian skribmaniero aŭ mi diras a egalas 2. 439 00:25:56,640 --> 00:25:58,720 Jen pli legebla en tiu kiam vi estas 440 00:25:58,720 --> 00:26:01,450 rigardante tiujn vere komplikaj funkcioj kiuj 441 00:26:01,450 --> 00:26:08,110 preni multnombraj arguments-- kaj ĉi povas esti dekoj oftentimes-- nur diras 442 00:26:08,110 --> 00:26:11,140 a egalas 2 estas pli legebla por vi por ke poste en la estonteco 443 00:26:11,140 --> 00:26:13,020 vi scios kion vi faras. 444 00:26:13,020 --> 00:26:17,120 >> Do en ĉi tiu kazo, kiu estas parolo estas 3 pli granda ol 2. 445 00:26:17,120 --> 00:26:18,270 Jes ĝi estas. 446 00:26:18,270 --> 00:26:22,350 Kaj simile, mi povas simple forigi tion kaj diri, estas 3 pli granda ol 2 447 00:26:22,350 --> 00:26:23,440 kie a egalas 2. 448 00:26:23,440 --> 00:26:26,230 Kaj tio estas ankaŭ vera. 449 00:26:26,230 --> 00:26:26,730 Jes? 450 00:26:26,730 --> 00:26:29,670 >> Publiko: Ĉu vi ekzekutinte linio por linio? 451 00:26:29,670 --> 00:26:30,670 >> Dustin Tran: Jes mi estas. 452 00:26:30,670 --> 00:26:33,900 Do kion mi faras tie ĉi estas prenante ĉi teksto document-- 453 00:26:33,900 --> 00:26:39,825 kaj kio estas granda pri rstudio estas ke Mi povas nur kuri short-- ŝlosilan ŝparvojo. 454 00:26:39,825 --> 00:26:41,820 Do mi faras Kontrolo-ENTER. 455 00:26:41,820 --> 00:26:44,850 >> Kaj poste, mi ferios la linio en la teksto dokumenton 456 00:26:44,850 --> 00:26:46,710 kaj tiam metante en la konzolo. 457 00:26:46,710 --> 00:26:50,800 Do jen mi estas diranta, bounded.compare kaj mi faras Kontrolo-X. 458 00:26:50,800 --> 00:26:52,540 Do mi povas simple kuras tie ankaŭ. 459 00:26:52,540 --> 00:26:54,920 Kaj tiam ke prenos la linio kaj tiam metis ĝin ĉi tie. 460 00:26:54,920 --> 00:26:57,900 Kaj tiam simile, mi povas ja kuras tie. 461 00:26:57,900 --> 00:27:04,630 Kaj tiam estos simple teni difinanta la liniojn en la konzolo tiel. 462 00:27:04,630 --> 00:27:10,690 >> Kaj se vi ankaŭ rimarkos la frizita krampoj estas tie ĝuste kiel en C sintakso. 463 00:27:10,690 --> 00:27:13,910 x-- se la se kondiĉo estas ankaŭ tuj uzos krampojn kaj poste 464 00:27:13,910 --> 00:27:15,350 vi povas uzi alie. 465 00:27:15,350 --> 00:27:17,496 Alia estas alie se. 466 00:27:17,496 --> 00:27:21,440 Do tiu tuj estos x egalas egalas al, ekzemple. 467 00:27:21,440 --> 00:27:24,190 468 00:27:24,190 --> 00:27:26,350 Kaj poste mi iros redoni ion tie. 469 00:27:26,350 --> 00:27:29,490 >> Rimarku ke estas du malsamaj aferoj tie ke okazas. 470 00:27:29,490 --> 00:27:34,360 Unu estas, ke ĉi tie mi preciziganta redonas la valoron True. 471 00:27:34,360 --> 00:27:35,950 Jen Mi nur diras x. 472 00:27:35,950 --> 00:27:39,970 Do R kutime defaŭlte preni la lastan arguments-- 473 00:27:39,970 --> 00:27:43,510 aŭ prenu la lastan linion de la kodo, kaj tio estos kio ĝi estas liverita. 474 00:27:43,510 --> 00:27:46,920 Do jen tiu estas la sama aĵo kiel fari reveno x. 475 00:27:46,920 --> 00:27:49,450 476 00:27:49,450 --> 00:27:50,540 >> Kaj nur por montri al vi. 477 00:27:50,540 --> 00:27:54,000 478 00:27:54,000 --> 00:27:57,052 Kaj poste, ĝi funkcios ĝuste tiel. 479 00:27:57,052 --> 00:27:58,260 Do lasu min daŭrigi kun tiu. 480 00:27:58,260 --> 00:28:00,630 >> Do alie se. 481 00:28:00,630 --> 00:28:04,060 Kaj vere, mi povas reveni io mi ŝatus. 482 00:28:04,060 --> 00:28:06,680 Do mi eĉ ne devos reveno Booleans tuta tempo, 483 00:28:06,680 --> 00:28:08,410 Mi povas simple reveni io alia. 484 00:28:08,410 --> 00:28:10,670 Do mi povas fari revenon urso. 485 00:28:10,670 --> 00:28:12,989 >> Do se x egalas egalas al, ĝi tuj revenas urso. 486 00:28:12,989 --> 00:28:14,530 Alie, ĝi estas tuj revenos vera. 487 00:28:14,530 --> 00:28:19,310 Mi povas ankaŭ fari vektoro aŭ vere nenion. 488 00:28:19,310 --> 00:28:22,210 >> Kaj kutime en statike tajp lingvojn, 489 00:28:22,210 --> 00:28:23,840 vi devus specifi tipo tie. 490 00:28:23,840 --> 00:28:25,750 Kaj rimarki ke ĝi povas nur esti io. 491 00:28:25,750 --> 00:28:32,400 Kaj R estas inteligenta sufiĉe ke ĝi Mi nur faru tion kaj ĝi funkcias bone. 492 00:28:32,400 --> 00:28:33,620 >> Do lasu min difini ĉi. 493 00:28:33,620 --> 00:28:39,460 494 00:28:39,460 --> 00:28:41,230 Unexpected-- Ho bedaŭras. 495 00:28:41,230 --> 00:28:44,336 Ĝi devus esti krispa krampoj tie. 496 00:28:44,336 --> 00:28:44,836 Akcepti. 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 Bone. 500 00:28:54,530 --> 00:28:58,250 Do nun ni komparu 3 kaj a egalas 3. 501 00:28:58,250 --> 00:29:01,860 Do ĝi devus return-- yeah-- la valoro urso. 502 00:29:01,860 --> 00:29:06,740 >> Do nun pli ĝenerala afero estas kiel kio pri aliaj datumstrukturoj. 503 00:29:06,740 --> 00:29:09,110 Do vi havas tiun funkcion. 504 00:29:09,110 --> 00:29:15,360 Ĉi tuj laboros sur omnaspeca de valoro kiel 3 aŭ ajna nombroj, datoj 505 00:29:15,360 --> 00:29:17,500 en aliaj vortoj, duobla. 506 00:29:17,500 --> 00:29:19,330 >> Sed kio pri io kiel vektoro. 507 00:29:19,330 --> 00:29:27,750 Do kio okazas se vi do-- do mi estas tuj atribuos val al, ni diru, 4 al 6. 508 00:29:27,750 --> 00:29:31,640 Do se mi revenos ĉi, ĉi estas vektoro de 4, 5, 6. 509 00:29:31,640 --> 00:29:34,935 >> Nun ni vidu kion okazas se mi faras bounded.compare val. 510 00:29:34,935 --> 00:29:37,680 511 00:29:37,680 --> 00:29:42,450 Do tiu tuj donos vin 15 1251. 512 00:29:42,450 --> 00:29:46,440 Do alivorte, ĝi estas jene se vi rigardas ĉi kondiĉo 513 00:29:46,440 --> 00:29:50,040 tial ĝi diras x estas malpli ol aŭ io. 514 00:29:50,040 --> 00:29:51,880 Do ĉi tiu estas iomete konfuzanta ĉar nun 515 00:29:51,880 --> 00:29:53,379 vi simple ne scias kio okazas. 516 00:29:53,379 --> 00:29:58,690 Do mi supozas unu afero vere bonon pri nur provas elpurigi 517 00:29:58,690 --> 00:30:04,600 estas ke vi povas nur fari val estas pli granda ol kaj vidu kio okazas tie. 518 00:30:04,600 --> 00:30:09,720 >> Do val-- a estas defaŭlte 5 do ni simple Val granda ol 5. 519 00:30:09,720 --> 00:30:14,280 Do tiu estas vektora FALSA FALSA VERA. 520 00:30:14,280 --> 00:30:17,206 Do nun kiam Vi rigardata tiu, ĝi tuj diros se, 521 00:30:17,206 --> 00:30:20,080 kaj tiam ĝi estas tuj donos al vi ĉi estas vektora de FALSA FALSA VERA. 522 00:30:20,080 --> 00:30:23,450 >> Do kiam vi pasas ĉi en R, R havas neniun ideon kion vi faras. 523 00:30:23,450 --> 00:30:26,650 Ĉar ĝi atendas unu sola valoro, kiu estas Bulea, kaj nun 524 00:30:26,650 --> 00:30:29,420 vi donante vektoro de Booleans. 525 00:30:29,420 --> 00:30:31,970 Do implicite, R estas ĝuste tuj diros kion la heck, 526 00:30:31,970 --> 00:30:35,440 Mi iras al supozi ke vi estas tuj prenos la unua elemento tie. 527 00:30:35,440 --> 00:30:38,320 Do Mi tuj say-- Mi iras supozi ke tiu estas malvera. 528 00:30:38,320 --> 00:30:40,890 Do estas dironta ne, tio ne pravas. 529 00:30:40,890 --> 00:30:45,246 >> Simile, ĝi tuj esti val egalas egalas al. 530 00:30:45,246 --> 00:30:47,244 Ne, bedaŭras 5. 531 00:30:47,244 --> 00:30:48,910 Kaj ĝi estas ankaŭ tuj estos falsaj ankaŭ. 532 00:30:48,910 --> 00:30:52,410 Do tuj diri ne, tio ne veras tiel do ĝi estas 533 00:30:52,410 --> 00:30:53,680 tuj revenos ĉi lasta. 534 00:30:53,680 --> 00:30:56,420 535 00:30:56,420 --> 00:31:01,360 >> Do tiu estas ĉu estas bona afero aŭ malbona afero, dependanta sur kiel ci vidas ĝin. 536 00:31:01,360 --> 00:31:05,104 Ĉar kiam vi estas krei tiujn funkciojn, 537 00:31:05,104 --> 00:31:06,770 vi ne vere scias kio okazas. 538 00:31:06,770 --> 00:31:10,210 Do kelkfoje vi volus eraro, aŭ eble vi simple volas averto. 539 00:31:10,210 --> 00:31:12,160 En tiu kazo, R ne fari tion. 540 00:31:12,160 --> 00:31:14,300 Do estas vere ĝis vi bazitaj ekstere de kio 541 00:31:14,300 --> 00:31:17,310 vi opinias la lingvon faru en tiu kazo 542 00:31:17,310 --> 00:31:22,920 se vi pasas en vektora de Booleans kiam vi faras unu se kondiĉo. 543 00:31:22,920 --> 00:31:31,733 >> Do diru ke vi havis la originalo unu kun se alie redoni vera kaj vi estas 544 00:31:31,733 --> 00:31:34,190 tuj revenos Malvero. 545 00:31:34,190 --> 00:31:39,300 Do unu maniero de abstracting tiu estas mi 546 00:31:39,300 --> 00:31:41,530 eĉ ne bezonas ĉi kondiĉa afero. 547 00:31:41,530 --> 00:31:47,220 Alia afero, kiun mi povas fari estas simple redonante la valoroj mem. 548 00:31:47,220 --> 00:31:53,240 Do se vi rimarkos, se vi fari val estas pli granda ol 5, 549 00:31:53,240 --> 00:31:56,350 ĉi tuj resendas vektora FALSA FALSA VERA. 550 00:31:56,350 --> 00:31:58,850 >> Eble tiu estas kion vi volas por bounded.compare. 551 00:31:58,850 --> 00:32:02,940 Vi volas reveni vektoro de Booleans kie komparas ĉiu de la valoroj 552 00:32:02,940 --> 00:32:04,190 al si. 553 00:32:04,190 --> 00:32:11,165 Do vi povas simple bounded.compare funkcio x, egalas 5. 554 00:32:11,165 --> 00:32:13,322 555 00:32:13,322 --> 00:32:15,363 Kaj tiam anstataŭ fari tiu se alie kondiĉo, 556 00:32:15,363 --> 00:32:21,430 Mi nur tuj revenos x estas pli granda ol 5. 557 00:32:21,430 --> 00:32:23,620 Do se tio estas vera, tiam ĝi estas tuj revenos vera. 558 00:32:23,620 --> 00:32:26,830 Kaj tiam se ĝi ne estas, ĝi estas tuj revenos Malvero. 559 00:32:26,830 --> 00:32:30,880 >> Kaj tio funkcios por iu el tiuj strukturoj. 560 00:32:30,880 --> 00:32:41,450 Do mi povas bounded.compare c 1 6 aŭ 9 kaj tiam mi tuj diros a egalas 6 561 00:32:41,450 --> 00:32:42,799 ekzemple. 562 00:32:42,799 --> 00:32:44,840 Kaj tiam tuj doni al vi la rajton Buleaj 563 00:32:44,840 --> 00:32:48,240 vektora ke vi desegni. 564 00:32:48,240 --> 00:32:50,660 >> Do tiuj estas nur funkcioj kaj nun lasu min nur 565 00:32:50,660 --> 00:32:54,980 montri vin kelkaj interagaj vidaĵojn. 566 00:32:54,980 --> 00:32:59,700 Mi ne kredas ke mi efektive havas Wi-Fi ĉi tie tiel mi nur iru antaŭen 567 00:32:59,700 --> 00:33:01,970 kaj transsaltu tion Mi supozas. 568 00:33:01,970 --> 00:33:05,260 >> Sed unu afero estas malvarmeta tamen estas kiu se vi nur 569 00:33:05,260 --> 00:33:09,600 volas testi faskon da malsamaj datumoj ordonojn, 570 00:33:09,600 --> 00:33:13,320 tie estas faskon da malsamaj datasets kiuj jam precargada en R. 571 00:33:13,320 --> 00:33:15,770 Do unu el ili estas vokis la iriso dataset. 572 00:33:15,770 --> 00:33:18,910 Jen unu el la plej konata en maŝina lerno. 573 00:33:18,910 --> 00:33:23,350 Vi kutime nur faru ian testo kazoj vidi se via kodo kuras. 574 00:33:23,350 --> 00:33:27,520 Do ni simple kontrolu kion irizo. 575 00:33:27,520 --> 00:33:33,130 >> Do tion tuj esti datumo kadro. 576 00:33:33,130 --> 00:33:36,000 Kaj estas speco de longa ĉar Mi ĵus presita ekster iriso. 577 00:33:36,000 --> 00:33:38,810 Ĝi estas presanta el la tuta afero. 578 00:33:38,810 --> 00:33:42,830 Do ĝi havas ĉiujn tiujn malsamaj nomoj. 579 00:33:42,830 --> 00:33:45,505 Do iriso estas kolekto de malsamaj floroj. 580 00:33:45,505 --> 00:33:48,830 En tiu kazo, estas diri vi la speco de tio, 581 00:33:48,830 --> 00:33:54,760 ĉiuj tiuj malsamaj larĝaj kaj longoj de la sepalo kaj la petalo. 582 00:33:54,760 --> 00:33:58,880 >> Kaj tiel normale, se presotan iriso, 583 00:33:58,880 --> 00:34:03,680 ekzemple, vi ne volas havi ĝin faras cxi tiun tutan ĉar tio povas transpreni 584 00:34:03,680 --> 00:34:05,190 via tuta konzolo. 585 00:34:05,190 --> 00:34:09,280 Do unu afero vere bela estas la kapo funkcio. 586 00:34:09,280 --> 00:34:12,929 Do se vi nur faru kapo Iriso, ĉi donos vin 587 00:34:12,929 --> 00:34:17,389 la unuaj kvin vicoj, aŭ ses mi supozas. 588 00:34:17,389 --> 00:34:19,909 Kaj tiam bone, vi povas simple entajpi tie. 589 00:34:19,909 --> 00:34:22,914 Do 20-- ĉi donos vi la unuaj 20 vicojn. 590 00:34:22,914 --> 00:34:24,830 Kaj mi fakte estis afabla de surprizitaj ke ĉi 591 00:34:24,830 --> 00:34:28,770 donis al mi ses tial mi iros antaŭen kaj kontrolu iris-- aŭ kapo, sorry. 592 00:34:28,770 --> 00:34:31,699 593 00:34:31,699 --> 00:34:34,960 Kaj tie li donos vi la dokumentado 594 00:34:34,960 --> 00:34:37,960 de kio la valoro kapo faras. 595 00:34:37,960 --> 00:34:40,839 Do li revenas la unua aŭ lasta de objekto. 596 00:34:40,839 --> 00:34:42,630 Kaj poste mi iros rigardi la defaŭltojn. 597 00:34:42,630 --> 00:34:47,340 Kaj tiam diras la defaŭlta metodo kapo x kaj n egalas 6L. 598 00:34:47,340 --> 00:34:50,620 Do tiu redonas la unuaj ses elementoj. 599 00:34:50,620 --> 00:34:55,050 Kaj simile, se vi rimarkos tie ĉi, mi ne devas entajpi n egalas 6. 600 00:34:55,050 --> 00:34:56,840 Defaŭlte ĝi uzas ses, mi supozas. 601 00:34:56,840 --> 00:35:00,130 Kaj tiam, se mi volas specifi certan valoro, tiam mi povas vidi ke tiel. 602 00:35:00,130 --> 00:35:02,970 603 00:35:02,970 --> 00:35:10,592 >> Tiel ke estas iuj simplaj komandoj kaj jen alia jen just-- bone, 604 00:35:10,592 --> 00:35:12,550 Mi can-- ĉi estas efektive iom pli kompleksa, 605 00:35:12,550 --> 00:35:17,130 sed tiu estos nur prenu la klaso de ĉiu kolumno de la iriso dataset. 606 00:35:17,130 --> 00:35:20,910 Do ĉi montros vin kion ĉiu el tiuj kolumnoj estas en terminoj de iliaj tipoj. 607 00:35:20,910 --> 00:35:23,665 Do sepalo longo estas nombraj, sepalo larĝa estas nombraj. 608 00:35:23,665 --> 00:35:26,540 Ĉiuj tiuj valoroj estas nur nombraj ĉar vi povas diri de ĉi datumoj 609 00:35:26,540 --> 00:35:29,440 strukturi tiuj estas ĉiuj tuj nombraj. 610 00:35:29,440 --> 00:35:34,310 >> Kaj la Specioj kolumno tuj esti faktoro. 611 00:35:34,310 --> 00:35:37,270 Do kutime, vi pensus ke tiu similas al signoĉeno. 612 00:35:37,270 --> 00:35:48,830 Sed se vi nur faru irisSpecies, kaj tiam mi iros fari kapo 5, 613 00:35:48,830 --> 00:35:51,820 kaj tiu tuj presi el la unuaj kvin valoroj. 614 00:35:51,820 --> 00:35:54,150 >> Kaj tiam rimarkos ĉi niveloj. 615 00:35:54,150 --> 00:35:58,870 Do ĉi tio komencis diri ĉi estas R vojo havi kategoriaj variabloj. 616 00:35:58,870 --> 00:36:03,765 Do anstataŭ simple havanta karaktero ŝnuroj, 617 00:36:03,765 --> 00:36:06,740 ĝi havas nivelojn preciziganta kiu el tiuj aĵoj estas. 618 00:36:06,740 --> 00:36:12,450 >> Do diru irisSpecies 1. 619 00:36:12,450 --> 00:36:17,690 Do kio vi deziras fari ĉi tie estas mi subsetting al ĉi Specioj kolumno. 620 00:36:17,690 --> 00:36:21,480 Do ĉi prenas la Specioj kolumno kaj poste 621 00:36:21,480 --> 00:36:23,820 ĝi indeksas akiri la unuan elementon. 622 00:36:23,820 --> 00:36:27,140 Do ĉi donu vin setosa. 623 00:36:27,140 --> 00:36:28,710 Kaj ĝi ankaŭ donas vin niveloj tie. 624 00:36:28,710 --> 00:36:32,812 >> Do vi povas ankaŭ kompari ĉi al la karaktero setosa 625 00:36:32,812 --> 00:36:34,645 kaj ĉi tio ne tuj esti vera ĉar unu 626 00:36:34,645 --> 00:36:37,940 estas de malsama tipo ol la aliaj. 627 00:36:37,940 --> 00:36:40,590 Aŭ mi supozas ke estas vera ĉar R estas pli inteligenta ol tio. 628 00:36:40,590 --> 00:36:45,420 Kaj ĝi rigardas tion kaj tiam diras, eble tiu estas kion vi volas. 629 00:36:45,420 --> 00:36:51,860 Do ĝi estas tuj diri la karaktero kordo setosa estas la sama kiel tiu ĉi. 630 00:36:51,860 --> 00:37:01,290 Kaj tiam simile, vi povas ankaŭ simple kaptu tiujn kiel tiel plu. 631 00:37:01,290 --> 00:37:05,580 >> Do tio estas nur ia rapidajn komandojn de la aro de datumoj. 632 00:37:05,580 --> 00:37:08,030 Do jen kelkaj datumoj tuŝo. 633 00:37:08,030 --> 00:37:11,360 Do ĉi tiu estas iom pli implikita kun la analizo de datumoj. 634 00:37:11,360 --> 00:37:18,340 Kaj tiu estas prenita de iuj bootcamp en R cxar en Berkeley. 635 00:37:18,340 --> 00:37:20,790 >> Do biblioteko fremdaj. 636 00:37:20,790 --> 00:37:24,880 Do mi iros al ŝarĝi en biblioteko kiu nomas fremdaj. 637 00:37:24,880 --> 00:37:32,460 Do tiu tuj donu al mi read.dta tial supozas ke mi havas ĉi dataset. 638 00:37:32,460 --> 00:37:39,000 Tiu estas stokita en la nuna laborante dosierujo de mia konzolo. 639 00:37:39,000 --> 00:37:42,190 Do ni simple vidas kion la laborantaj dosierujo estas. 640 00:37:42,190 --> 00:37:44,620 >> Do jen mia laborista dosierujo. 641 00:37:44,620 --> 00:37:50,040 Kaj legu dot datumoj, ĉi aferon, diras tiu dosiero 642 00:37:50,040 --> 00:37:54,650 situas en la datumoj dosierujo de tiu fluo laborista dosierujo. 643 00:37:54,650 --> 00:38:00,520 Kaj read.dta ĉi ne estas defaŭlta komando. 644 00:38:00,520 --> 00:38:02,760 Supozeble mi ŝarĝis lin en la jam. 645 00:38:02,760 --> 00:38:04,750 IEI supozis mi ŝarĝis ĉi en jam. 646 00:38:04,750 --> 00:38:08,115 >> Sed tiel read.dta ne tuj esti defaŭlte komando. 647 00:38:08,115 --> 00:38:11,550 Kaj tio estas kial vi estas iranta havi ŝargi en tiu biblioteko package-- 648 00:38:11,550 --> 00:38:14,500 tiu pako nomita fremdaj. 649 00:38:14,500 --> 00:38:16,690 Kaj se vi ne havas la pakaĵon, mi opinias 650 00:38:16,690 --> 00:38:19,180 fremda estas unu el la enkonstruita Ones. 651 00:38:19,180 --> 00:38:31,150 Alie, vi povas ankaŭ fari install.packages 652 00:38:31,150 --> 00:38:33,180 kaj Tiu instalos la pakaĵon. 653 00:38:33,180 --> 00:38:36,878 Kaj ĉi donos vin R. Uh, ne. 654 00:38:36,878 --> 00:38:39,830 655 00:38:39,830 --> 00:38:43,140 Kaj tiam mi simple tuj haltos ĉar mi jam havas ĝin. 656 00:38:43,140 --> 00:38:46,920 >> Sed kio estas vere bela pri R estas kiu la demarŝo de pakoj 657 00:38:46,920 --> 00:38:48,510 sistemo estas tre eleganta. 658 00:38:48,510 --> 00:38:52,470 Ĉar ĝi stokas ĉiun vere bele vin. 659 00:38:52,470 --> 00:38:59,780 Do en ĉi tiu kazo, ĝi estas tuj stoki ĝin, mi kredas, ĉi biblioteko tie. 660 00:38:59,780 --> 00:39:02,390 >> Do anytime vi volas instali novan pakojn, 661 00:39:02,390 --> 00:39:04,980 estas nur tiel simpla kiel faranta install.packages 662 00:39:04,980 --> 00:39:07,500 kaj R sukcesos ĉiuj la pakoj por vi. 663 00:39:07,500 --> 00:39:12,900 Do vi ne devas fari ion en Python, kie vi havas eksterajn pako 664 00:39:12,900 --> 00:39:15,330 perantoj kiel papero Anakondo kie vi estas 665 00:39:15,330 --> 00:39:18,310 doing-- vi instalu la pakoj ekstere de Python 666 00:39:18,310 --> 00:39:20,940 kaj tiam vi provas kuri ilin mem. 667 00:39:20,940 --> 00:39:22,210 Do ĉi tiu estas vere bela maniero. 668 00:39:22,210 --> 00:39:25,590 >> Kaj install.packages postulas interreto. 669 00:39:25,590 --> 00:39:31,950 Ĝi prenas ŝin de servanto kaj la Repository 670 00:39:31,950 --> 00:39:33,960 kolektas ĉiujn pakoj nomas CRAN. 671 00:39:33,960 --> 00:39:40,690 Kaj vi povas specifi kion tipo de spegulo vi volas elŝuti la pakaĵoj el. 672 00:39:40,690 --> 00:39:43,420 >> Do jen mi prenante ĉi dataset. 673 00:39:43,420 --> 00:39:46,240 Mi legas ĝin uzante ĉi tiu funkcio. 674 00:39:46,240 --> 00:39:49,360 Do lasu min antaŭeniri kaj fari tion. 675 00:39:49,360 --> 00:39:52,900 >> Do ni supozu ke Havante tiun dataset 676 00:39:52,900 --> 00:39:55,550 kaj vi havas absolute neniun ideon kio ĝi estas. 677 00:39:55,550 --> 00:39:58,560 Kaj tion efektive venas supren sufiĉe ofte en la industrio 678 00:39:58,560 --> 00:40:00,910 kie vi nur havas tiujn tunoj kaj tunoj de senorda aferoj 679 00:40:00,910 --> 00:40:02,890 kaj ili estas nekredeble neetikedita. 680 00:40:02,890 --> 00:40:06,380 Do jen mi havas ĉi dataset kaj mi ne scias 681 00:40:06,380 --> 00:40:08,400 kio estas do mi simple montrante rigard ĝin. 682 00:40:08,400 --> 00:40:10,620 >> Do mi tuj faros kapon unue. 683 00:40:10,620 --> 00:40:14,190 Do mi kontrolu la unuaj ses kolumnoj de kion ĉi dataset estas. 684 00:40:14,190 --> 00:40:21,730 Do tiu estas stato, pres04, kaj tiam ĉiuj tiuj malsamaj ia kolumnojn. 685 00:40:21,730 --> 00:40:25,612 Kaj kio estas interesa tie, mi supozas, estas ke vi 686 00:40:25,612 --> 00:40:27,945 supozus ke tio aspektas kiel ia elekto. 687 00:40:27,945 --> 00:40:30,482 688 00:40:30,482 --> 00:40:32,190 Kaj mi supozas ĝuste el rigardante la dosiero 689 00:40:32,190 --> 00:40:41,070 Name Jen ia kolekto de datumoj pri kandidatoj aŭ balotantoj 690 00:40:41,070 --> 00:40:44,920 kiuj voĉdonis por specifaj prezidantoj aŭ prezidanto kandidatoj 691 00:40:44,920 --> 00:40:46,550 por la 2004 elekto. 692 00:40:46,550 --> 00:40:52,920 >> Do jen valorojn 1, 2 tial unu vojo de stokante 693 00:40:52,920 --> 00:40:56,540 la prezidanto kandidatoj estas iliaj nomoj. 694 00:40:56,540 --> 00:40:59,780 En tiu kazo, ĝi similas Ili estas nur entjeraj valoroj. 695 00:40:59,780 --> 00:41:04,030 Do 2004, estis Bush kontre Kerry mi kredas. 696 00:41:04,030 --> 00:41:09,010 Kaj nun, ni diru simple ne scias ĉu 1 korespondas al Bush aŭ 2 697 00:41:09,010 --> 00:41:11,703 respondas al Kerry aŭ kaj tiel plu kaj tiel plu, ĉu ne? 698 00:41:11,703 --> 00:41:15,860 >> Kaj tiu estas, ĝuste al mi, sufiĉe komuna problemo. 699 00:41:15,860 --> 00:41:18,230 Do kion vi povas fari en ĉi tiu kazo? 700 00:41:18,230 --> 00:41:20,000 Do ni kontrolu ĉiuj tiuj aliaj aĵoj. 701 00:41:20,000 --> 00:41:22,790 >> stato, estas akceptante ĉi devenas malsamajn statojn. 702 00:41:22,790 --> 00:41:25,100 partyid, enspezoj. 703 00:41:25,100 --> 00:41:27,710 Ni rigardu partyid. 704 00:41:27,710 --> 00:41:32,800 Do eble unu afero vi povas fari estas rigardu ĉiu de la observoj 705 00:41:32,800 --> 00:41:36,250 kiu havas partyid de Respublika aŭ Demokrato aŭ io. 706 00:41:36,250 --> 00:41:38,170 Do ni simple rigardu kio partyid estas. 707 00:41:38,170 --> 00:41:41,946 >> Do mi iros por preni dat kaj tiam mi iros 708 00:41:41,946 --> 00:41:47,960 fari cxi dolaro signo manipulantino faris antaŭe 709 00:41:47,960 --> 00:41:50,770 kaj tiu tuj subaro al tiu kolumno. 710 00:41:50,770 --> 00:41:57,760 Kaj poste mi iros por estri ĉi en 20, nur por vidi, kion tio aspektas. 711 00:41:57,760 --> 00:42:00,170 >> Do ĉi tiu estas nur bando de Nas. 712 00:42:00,170 --> 00:42:02,800 Do alivorte, vi havas mankas datumoj pri tiuj infanoj. 713 00:42:02,800 --> 00:42:08,100 Sed vi ankaŭ rimarkas ĉi dat partyid estas faktoro 714 00:42:08,100 --> 00:42:10,030 tiel ĉi donas vin malsamaj kategorioj. 715 00:42:10,030 --> 00:42:14,170 Do alivorte, partyid povas preni Demokrato, Respublikano, Sendependa, 716 00:42:14,170 --> 00:42:16,640 aŭ ion alian. 717 00:42:16,640 --> 00:42:23,940 >> Do ni iru antaŭen kaj ni vidi kiu el tiuj is-- Oh, OK. 718 00:42:23,940 --> 00:42:28,480 Do mi iros al subaro al partyid kaj tiam 719 00:42:28,480 --> 00:42:32,780 rigardi, kiuj estas Demokrato, ekzemple. 720 00:42:32,780 --> 00:42:37,150 Ĉi tuj donos vin Bulea, grandega Buleaj de TRUEs kaj FALSEs. 721 00:42:37,150 --> 00:42:41,630 >> Kaj nun diru mi volas al subaro al tiuj infanoj. 722 00:42:41,630 --> 00:42:47,260 Do tiu tuj prenos mian dat kaj subaro al kiom observoj 723 00:42:47,260 --> 00:42:48,910 havi partyid egaluloj egalas demokrato. 724 00:42:48,910 --> 00:42:52,830 725 00:42:52,830 --> 00:42:55,180 Kaj tiu estas sufiĉe longa ĉar ekzistas tiom da ili. 726 00:42:55,180 --> 00:42:59,060 Do nun mi iros por estri ĉi en 20. 727 00:42:59,060 --> 00:43:05,690 728 00:43:05,690 --> 00:43:11,270 >> Kaj kiel vi rimarkos, egalas egaluloj Estas interesa ke vi estas 729 00:43:11,270 --> 00:43:13,250 already-- vi ankaŭ inkludante la NAS. 730 00:43:13,250 --> 00:43:19,010 Do en ĉi tiu kazo, vi ankoraŭ ne povas atingi ajna informo ĉar nun vi havas nas 731 00:43:19,010 --> 00:43:22,650 kaj vi nur volas vidi, kiu el la observo respondas al Democrat 732 00:43:22,650 --> 00:43:24,670 kaj ne tiuj mankas valoroj mem. 733 00:43:24,670 --> 00:43:27,680 Do kiel vi forigi tiujn nas? 734 00:43:27,680 --> 00:43:36,410 >> Do jen mi simple uzante la supren klavo sur mia kursoro kaj tiam dirante movante ĉirkaŭe. 735 00:43:36,410 --> 00:43:39,778 Kaj tiam tie mi simple irante diri is.na datpartyid. 736 00:43:39,778 --> 00:43:48,970 737 00:43:48,970 --> 00:43:52,720 Do ĉi kaj kaj prenos du malsamaj Buleaj vektoroj 738 00:43:52,720 --> 00:43:57,160 kaj diri ĝin tuj estos VERA kaj FALSA ekzemple. 739 00:43:57,160 --> 00:43:59,190 Do ĝi estas tuj faros ĉi komponanto-saĝa. 740 00:43:59,190 --> 00:44:02,910 Do jen mi diras iom la datumoj kadro, subaro 741 00:44:02,910 --> 00:44:10,170 al tiuj, kiuj respondas al la demokrato, kaj forigi ajnan el ili kiuj ne estas Na. 742 00:44:10,170 --> 00:44:13,540 >> Do ĉi will-- devus doni al vi ion. 743 00:44:13,540 --> 00:44:16,540 744 00:44:16,540 --> 00:44:17,600 Vidu is.na. 745 00:44:17,600 --> 00:44:24,670 746 00:44:24,670 --> 00:44:27,690 Ni provu is.na datpartyid. 747 00:44:27,690 --> 00:44:36,290 748 00:44:36,290 --> 00:44:45,290 Kaj ĉi donu you-- sorry-- nur Bulea vektoro. 749 00:44:45,290 --> 00:44:49,260 Kaj tiam, ĉar ĝi estas tiel longa, Mi iras al subaro al 20. 750 00:44:49,260 --> 00:44:49,760 Akcepti. 751 00:44:49,760 --> 00:44:51,570 Do tiu devus labori. 752 00:44:51,570 --> 00:44:54,700 >> Kaj tiu unu ankaŭ estos TRUEs. 753 00:44:54,700 --> 00:45:01,830 Ha, do mia eraro tie estas ke I'm-- mi uzi C ++ kaj R interŝanĝeble do mi faros 754 00:45:01,830 --> 00:45:03,590 tiun eraron tutan tempon. 755 00:45:03,590 --> 00:45:05,807 La kaj telefonisto estas fakte tiu kiun vi volas. 756 00:45:05,807 --> 00:45:08,140 Vi ne volas uzi du ampersands, nur sola unu. 757 00:45:08,140 --> 00:45:14,970 758 00:45:14,970 --> 00:45:17,010 Akcepti. 759 00:45:17,010 --> 00:45:18,140 >> Do ni vidu. 760 00:45:18,140 --> 00:45:20,930 761 00:45:20,930 --> 00:45:23,920 Do ni subsetted al la partyid kie ili estas demokrato 762 00:45:23,920 --> 00:45:25,300 kaj ili ne mankas valoroj. 763 00:45:25,300 --> 00:45:27,690 Kaj nun ni rigardu kio aĵoj ili voĉdonis por. 764 00:45:27,690 --> 00:45:31,530 Do ŝajnas kiel plej de ili voĉdonis por 1. 765 00:45:31,530 --> 00:45:36,090 Do mi iros por antaŭeniri kaj diri ke estas Kerry. 766 00:45:36,090 --> 00:45:39,507 >> Kaj simile, vi povas ankaŭ iros al Respublika 767 00:45:39,507 --> 00:45:41,090 kaj espereble, ĉi devus doni vin 2. 768 00:45:41,090 --> 00:45:49,730 769 00:45:49,730 --> 00:45:51,770 Estas nur faskon de malsamaj kolumnoj. 770 00:45:51,770 --> 00:45:53,070 Kaj ja, ĝi estas 2. 771 00:45:53,070 --> 00:45:55,750 Do partyid ĉiuj Respublika, plejparte ili voĉdonas por 2. 772 00:45:55,750 --> 00:45:58,390 >> Do ĝi similas, nur rigardante ĉi, 773 00:45:58,390 --> 00:46:00,600 Respublika tuj estos oni very-- aŭ la partyid 774 00:46:00,600 --> 00:46:02,790 tuj estos tre granda faktoro en determinado 775 00:46:02,790 --> 00:46:05,420 kiu kandidato ili estas tuj voĉdoni por. 776 00:46:05,420 --> 00:46:07,120 Kaj tiu estas evidente vera ĝenerale. 777 00:46:07,120 --> 00:46:10,139 Kaj tiu egalas viajn intuicio, kompreneble. 778 00:46:10,139 --> 00:46:11,930 Do ĝi similas min elkuranta de tempo tiel 779 00:46:11,930 --> 00:46:17,040 lasu min nur iru antaŭen kaj montri iujn rapidajn bildoj. 780 00:46:17,040 --> 00:46:21,120 Do jen iu kiu estas iomete pli komplikita kun visualización. 781 00:46:21,120 --> 00:46:26,450 Do en ĉi tiu kazo, ĉi tiu estas tre simpla analizo de simple kontrolanta kion 782 00:46:26,450 --> 00:46:28,500 la prezidanto de '04 estas. 783 00:46:28,500 --> 00:46:33,920 >> Do en ĉi tiu kazo, ni diru vi volis respondi tiun demandon. 784 00:46:33,920 --> 00:46:38,540 Do supozu ni volis koni la balotado konduto en la 2004 prezidanto elekto 785 00:46:38,540 --> 00:46:41,170 kaj kiel kiu varias laux gento. 786 00:46:41,170 --> 00:46:44,380 Do ne nur vi volas vidi la balotado konduto, 787 00:46:44,380 --> 00:46:47,860 sed vi volas subaro de ĉiu raso kaj varo de resumi tion. 788 00:46:47,860 --> 00:46:50,770 Kaj vi nur povas diri per tiu kompleksa skribmaniero 789 00:46:50,770 --> 00:46:52,580 ke tio estas speco de prenanta malprecizaj. 790 00:46:52,580 --> 00:46:56,390 >> Do unu el la plej antaŭitaj R pakoj kiuj estas ankaŭ speco de freŝaj 791 00:46:56,390 --> 00:47:00,070 nomas dplyr. 792 00:47:00,070 --> 00:47:03,060 Do estas ĉi tiu rajto tie. 793 00:47:03,060 --> 00:47:08,080 Kaj ggg-- ggplot2 estas nur bela maniero de fari bona visualizaciones 794 00:47:08,080 --> 00:47:09,400 ol la enkonstruita unu. 795 00:47:09,400 --> 00:47:11,108 >> Do mi iros al ŝarĝi tiuj du bibliotekoj. 796 00:47:11,108 --> 00:47:13,200 797 00:47:13,200 --> 00:47:16,950 Kaj tiam, mi estas ironta antaŭen kaj kuri ĉi komando. 798 00:47:16,950 --> 00:47:19,050 Vi povas simple trakti tion kiel nigra skatolo. 799 00:47:19,050 --> 00:47:23,460 >> Kio okazas estas kiu ĉi pipon operatoro preterpasas en tiu argumento 800 00:47:23,460 --> 00:47:24,110 en ĉi tie. 801 00:47:24,110 --> 00:47:28,070 Do mi celas grupon de dat raso kaj tiam prezidanto 04. 802 00:47:28,070 --> 00:47:31,530 Kaj tiam, ĉiuj tiuj aliaj komandoj estas filtri kaj tiam resumante 803 00:47:31,530 --> 00:47:34,081 kie mi faras elnombradon kaj tiam mi komplotanta ŝin tie. 804 00:47:34,081 --> 00:47:39,980 805 00:47:39,980 --> 00:47:42,500 OK malvarmeta. 806 00:47:42,500 --> 00:47:44,620 Do ni iru antaŭen kaj vidu kion ĉi aspektas. 807 00:47:44,620 --> 00:47:52,280 808 00:47:52,280 --> 00:47:57,290 >> Do kio okazas ĉi tie estas ke mi nur komplotis ĉiu de la kuroj kaj tiam 809 00:47:57,290 --> 00:47:59,670 kio aĵoj ili voĉdonis por. 810 00:47:59,670 --> 00:48:03,492 Kaj tiujn du malsamajn valoroj respondas al 2 kaj 1. 811 00:48:03,492 --> 00:48:05,325 Se vi volas esti pli eleganta, vi povas ankaŭ 812 00:48:05,325 --> 00:48:11,770 nur specifi ke 2 estas Kerry-- aŭ 2 estas Bush, kaj tiam 1 estas Kerry. 813 00:48:11,770 --> 00:48:13,700 Kaj vi povas ankaŭ havi ke en via legendon. 814 00:48:13,700 --> 00:48:17,410 >> Kaj vi povas ankaŭ fendi tiuj trinkejo grafeoj. 815 00:48:17,410 --> 00:48:19,480 Ĉar unu afero estas ke, se vi rimarkos, 816 00:48:19,480 --> 00:48:24,560 ĉi tio ne estas tre facila identigi kiu el tiuj du valoroj estas pli grandaj. 817 00:48:24,560 --> 00:48:27,920 Do unu afero vi volus fari estas preni ĉi blua spaco 818 00:48:27,920 --> 00:48:31,855 kaj simple movi ĝin tien tiom vi povas kompari tiujn du flankon ĉe flanko. 819 00:48:31,855 --> 00:48:34,480 Kaj mi supozas ke tio estas io mi ne havas tempon por fari ĝuste nun, 820 00:48:34,480 --> 00:48:36,660 sed tio estas ankaŭ tre facile fari. 821 00:48:36,660 --> 00:48:40,310 Vi povas simple rigardi en la viro paĝoj de ggplot. 822 00:48:40,310 --> 00:48:47,170 Do vi povas simple ggplot ŝatas ke kaj legas en tiu viro paĝo. 823 00:48:47,170 --> 00:48:51,920 >> Do lasu min nur rapide montri al vi iom malvarmeta aĵoj. 824 00:48:51,920 --> 00:48:57,610 Ni iru antaŭen kaj iru to-- nur apliko de maŝino lernado. 825 00:48:57,610 --> 00:49:02,450 Do diru ni havas tiujn tri pakoj tiel Mi iras ŝarĝi tiujn en. 826 00:49:02,450 --> 00:49:05,500 827 00:49:05,500 --> 00:49:09,170 Do ĉi nur presas el iuj informoj post mi ŝarĝis en la afero. 828 00:49:09,170 --> 00:49:15,220 Do mi diras ĉi read.csv, tiu aro de datumoj, kaj nun 829 00:49:15,220 --> 00:49:18,940 Mi iras al antaŭeniri kaj rigardas kaj vidi kio estas ene ĉi dataset. 830 00:49:18,940 --> 00:49:22,080 >> Do la unuaj 20 observoj. 831 00:49:22,080 --> 00:49:27,190 Do mi nur devas X1, X2, kaj Y. Do Ŝajnas kiel faskon da tiuj valoroj 832 00:49:27,190 --> 00:49:31,640 ili iras de eble 20 ĝis 80 aŭ tiel. 833 00:49:31,640 --> 00:49:37,700 Kaj tiam simile por X2 kaj tiam ĉi Y ŝajnas esti stampoj 0 kaj 1. 834 00:49:37,700 --> 00:49:49,500 >> Kontroli ĉi, mi povas nur faru resumon datumoj X1. 835 00:49:49,500 --> 00:49:51,660 Kaj tiam simile por ĉiuj tiuj aliaj kolumnoj. 836 00:49:51,660 --> 00:49:55,300 Do resumo estas rapida ebleco nur montrante vin rapida valoroj. 837 00:49:55,300 --> 00:49:56,330 Ho, pardonon. 838 00:49:56,330 --> 00:49:58,440 Ĉi tiu devus esti Y. 839 00:49:58,440 --> 00:50:03,420 >> Do en ĉi tiu kazo, ĝi donas la quantiles, mezaj, maxes tiel. 840 00:50:03,420 --> 00:50:07,130 En tiu kazo, dataY, vi povas vidi ke ĝi estas nur tuj esti 0 kaj 1. 841 00:50:07,130 --> 00:50:10,100 Ankaŭ la meznombro estas diranta 0.6, nur signifas ke 842 00:50:10,100 --> 00:50:13,380 Ŝajnas kiel mi havas pli _1s_ ol _0s_. 843 00:50:13,380 --> 00:50:16,160 >> Do lasu min iri antaŭen kaj spektaklo vi kion ĉi aspektas. 844 00:50:16,160 --> 00:50:17,470 Do mi simple tuj komploti ĉi. 845 00:50:17,470 --> 00:50:22,852 846 00:50:22,852 --> 00:50:24,636 Vidu kiom por liberigi ĉi. 847 00:50:24,636 --> 00:50:30,492 848 00:50:30,492 --> 00:50:31,468 Ho OK. 849 00:50:31,468 --> 00:50:35,840 850 00:50:35,840 --> 00:50:36,340 Akcepti. 851 00:50:36,340 --> 00:50:37,590 >> Do tiu estas kio similas. 852 00:50:37,590 --> 00:50:46,310 Do ŝajnas kiel flavaj mi specifita kiel 0, kaj tiam ruĝa Mi indikis kiel _1s_. 853 00:50:46,310 --> 00:50:52,190 Do jen ĝi aspektas kiel label punktoj kaj ĝi 854 00:50:52,190 --> 00:50:56,410 ŝajnas kvazaŭ vi simple volas iun ia clustering sur oriento. 855 00:50:56,410 --> 00:51:01,020 >> Kaj lasu min simple iru antaŭen kaj spektaklo vi kelkajn el tiuj korpigitaj en funkcioj. 856 00:51:01,020 --> 00:51:03,580 Do jen estas lm. 857 00:51:03,580 --> 00:51:06,060 Do tiu estas nur provas persvadi linio al tiu. 858 00:51:06,060 --> 00:51:08,640 Do kio estas la plej bona vojo ke mi povu persvadi linion tian 859 00:51:08,640 --> 00:51:14,020 ke estos bona apartigi tiu speco de clustering. 860 00:51:14,020 --> 00:51:21,790 Kaj ideale, vi povas simple vidi ke mi ĵus kuras la komandojn 861 00:51:21,790 --> 00:51:25,450 kaj tiam mi iros antaŭen kaj aldoni la linion. 862 00:51:25,450 --> 00:51:28,970 >> Do ĉi tio ŝajnas kiel la plej bona diveno. 863 00:51:28,970 --> 00:51:34,150 Ĝi estas prenante la plej bona kiu minimumigas la eraro en provi persvadi tiu linio. 864 00:51:34,150 --> 00:51:40,000 Evidente, ĉi tiu similas kiel bonon, sed ĝi ne estas la plej bona. 865 00:51:40,000 --> 00:51:43,130 Kaj linearaj modeloj, en ĝenerala, tuj estos 866 00:51:43,130 --> 00:51:46,811 vere granda por teorio kaj ĝuste speco konstrumetio fundamentoj de maŝino 867 00:51:46,811 --> 00:51:47,310 lerni. 868 00:51:47,310 --> 00:51:50,330 Sed en praktiko, vi tuj volas fari ion pli ĝeneralan. 869 00:51:50,330 --> 00:51:54,280 >> Do vi povas simple provi kurante iu nomita neŭra reto. 870 00:51:54,280 --> 00:51:57,110 Tiuj aferoj estas ĉiufoje pli pli komuna. 871 00:51:57,110 --> 00:52:00,530 Kaj ili nur laboras fantazie por grandskalaj datasets. 872 00:52:00,530 --> 00:52:07,080 Do en ĉi tiu kazo, ni nur have-- ni see-- ni havas nrow. 873 00:52:07,080 --> 00:52:09,010 Do nrow estas ĝuste diri numeron de vicoj. 874 00:52:09,010 --> 00:52:11,790 Do en ĉi tiu kazo, mi havas 100 observoj. 875 00:52:11,790 --> 00:52:15,010 >> Do lasu min iri antaŭen kaj fari neŭra reto. 876 00:52:15,010 --> 00:52:18,620 Do ĉi tiu estas vere bela ĉar mi povas simple diri nnet 877 00:52:18,620 --> 00:52:21,767 kaj tiam mi regressing Y. Do la Y estas tiu kolumno. 878 00:52:21,767 --> 00:52:23,850 Kaj tiam regressing ĝin sur la aliaj du variabloj. 879 00:52:23,850 --> 00:52:27,360 Do ĉi tiu estas pli mallonga skribmaniero por X1 kaj X2. 880 00:52:27,360 --> 00:52:29,741 >> Do ni iru antaŭen kaj kuri ĉi. 881 00:52:29,741 --> 00:52:30,240 Ho, pardonon. 882 00:52:30,240 --> 00:52:32,260 Mi bezonas kuri ĉi tiu tuta afero. 883 00:52:32,260 --> 00:52:37,500 Kaj tiu estas ĝuste presi skribmaniero por kiom rapide aŭ ne rapide 884 00:52:37,500 --> 00:52:38,460 konverĝis. 885 00:52:38,460 --> 00:52:41,420 Do ĝi aspektas kiel ĝi konverĝas. 886 00:52:41,420 --> 00:52:44,970 Do lasu min iri antaŭen kaj printi kion tio aspektas. 887 00:52:44,970 --> 00:52:51,260 >> Vidu ĉi tie la pentraĵo kaj tie estas kontura montrante kiel bonege ĉio sidas. 888 00:52:51,260 --> 00:52:56,380 Kaj jen estas just-- vi povas vidi ĉi tiu tiu estas tre, tre bela. 889 00:52:56,380 --> 00:52:59,400 Ĝi inkluzive eblus overfitting, sed vi povas ankaŭ 890 00:52:59,400 --> 00:53:03,390 klarigi ĉi kun aliaj teknikoj kiel kruco-validación. 891 00:53:03,390 --> 00:53:06,180 Kaj ĉi tiuj estas ankaŭ konstruitaj en R. 892 00:53:06,180 --> 00:53:09,170 >> Kaj lasu min nur montras al vi apogi vektora maŝino. 893 00:53:09,170 --> 00:53:12,470 Tio estas alia vere komuna tekniko en maŝina lernado. 894 00:53:12,470 --> 00:53:18,550 Ĝi estas tre simila al linearaj modeloj, sed uzu kio nomiĝas kernon metodo. 895 00:53:18,550 --> 00:53:22,790 Kaj ni vidos kiom bone ke faras. 896 00:53:22,790 --> 00:53:26,430 Do ĉi tiu estas tre simila al kiel bone neural reto realigas, 897 00:53:26,430 --> 00:53:27,900 sed estas multe pli milda. 898 00:53:27,900 --> 00:53:35,740 Kaj tiu estas bazita for de what-- kiom SVMs laboro. 899 00:53:35,740 --> 00:53:40,250 >> Do ĉi tio estas nur tre rapidan superrigardon de kelkaj 900 00:53:40,250 --> 00:53:43,822 de la konstruita-en funkcioj kiujn vi povas fari kaj ankaŭ iuj de la datumoj tuŝo. 901 00:53:43,822 --> 00:53:45,905 Do lasu min ĝuste sekvas antaŭeniras kaj reiri al la diapozitivoj. 902 00:53:45,905 --> 00:53:50,290 903 00:53:50,290 --> 00:53:53,670 >> Do evidente, tiu estas ne tre ampleksa. 904 00:53:53,670 --> 00:53:57,140 Kaj tiu estas vere ĝuste teaser montrante al vi, kion vi povas vere fari en R. 905 00:53:57,140 --> 00:53:59,100 Do se vi volas simple ŝatas lerni pli, jen 906 00:53:59,100 --> 00:54:01,210 estas faskon de malsamaj rimedoj. 907 00:54:01,210 --> 00:54:06,890 >> Do se vi ŝatis lernolibroj aŭ vi estas nur ŝatis legi tion en interreto, 908 00:54:06,890 --> 00:54:09,670 tiam ĉi tiu estas fantazia unu post Hadley Wickham, 909 00:54:09,670 --> 00:54:13,010 kiu ankaŭ kreis ĉiujn tiujn vere malvarmeta pakoj. 910 00:54:13,010 --> 00:54:17,420 Se vi estas ŝatanto al videos, tiam Berkeley havas terurigan bootcamp 911 00:54:17,420 --> 00:54:21,060 tio several-- ke estas iom longa. 912 00:54:21,060 --> 00:54:24,210 Kaj ĝi instruos vin preskaŭ ĉio vi ŝatus scii pri R. 913 00:54:24,210 --> 00:54:27,770 >> Kaj simile, estas Codeacademy kaj ĉiuj tiuj aliaj speco 914 00:54:27,770 --> 00:54:29,414 de interagaj retpaĝaroj. 915 00:54:29,414 --> 00:54:31,580 Ili ankaŭ ricevas common-- pli kaj pli komuna. 916 00:54:31,580 --> 00:54:33,749 Do tiu estas tre simila al Codeacademy. 917 00:54:33,749 --> 00:54:35,790 Kaj fine, se vi nur volas Komunumo kaj helpi, 918 00:54:35,790 --> 00:54:38,800 tiuj estas aro da tion vi povas iri al. 919 00:54:38,800 --> 00:54:40,880 Evidente, ni ankoraŭ uzi dissendolistojn, ĝuste 920 00:54:40,880 --> 00:54:44,860 kiel preskaŭ ĉiu alia programlingvo komunumo. 921 00:54:44,860 --> 00:54:47,880 Kaj #rstats, tiu estas nia komunumo Twitter. 922 00:54:47,880 --> 00:54:49,580 Tiu estas certe sufiĉe komunaj. 923 00:54:49,580 --> 00:54:50,850 Kaj tiam uzanto! 924 00:54:50,850 --> 00:54:52,340 Estas nur nia konferenco. 925 00:54:52,340 --> 00:54:55,390 >> Kaj tiam, kompreneble, vi povas uzi ĉiujn tiujn aliajn Q & A aferojn, 926 00:54:55,390 --> 00:54:57,680 kiel Stack Overflow, Google, kaj tiam GitHub. 927 00:54:57,680 --> 00:55:00,490 Ĉar plejparto de ĉi tiuj pakoj kaj multe de la komunumo 928 00:55:00,490 --> 00:55:03,420 estos centrita ĉirkaŭ evoluantaj kodo ĉar ĝi estas malfermita fonto. 929 00:55:03,420 --> 00:55:05,856 Kaj estas ĝuste vere bela en GitHub. 930 00:55:05,856 --> 00:55:08,730 Kaj fine, vi povas kontakti min se Vi nur devas ajnan rapidan demandoj. 931 00:55:08,730 --> 00:55:13,530 Do vi povas trovi min sur Twitter tie, mia retejo, kaj nur mian retpoŝton. 932 00:55:13,530 --> 00:55:17,840 Do espereble, ke estis something-- malmultan teaser 933 00:55:17,840 --> 00:55:20,900 de kio R estas vere kapablas fari. 934 00:55:20,900 --> 00:55:23,990 Kaj espereble, vi nur Kontroli ĉi tiuj tri ligoj 935 00:55:23,990 --> 00:55:25,760 kaj vidi kion vi povas fari pli. 936 00:55:25,760 --> 00:55:28,130 Kaj mi supozas ke estas nur pri ĝi. 937 00:55:28,130 --> 00:55:28,630 Dankon. 938 00:55:28,630 --> 00:55:30,780 >> [Aplaŭdo] 939 00:55:30,780 --> 00:55:31,968