1 00:00:00,000 --> 00:00:00,750 2 00:00:00,750 --> 00:00:09,800 >> [MUSIC Playing] 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 Emrin tim Dustin. 6 00:00:14,980 --> 00:00:18,419 Kështu që unë do të jetë paraqitur Analiza e të dhënave në R. 7 00:00:18,419 --> 00:00:19,710 Vetëm pak për veten time. 8 00:00:19,710 --> 00:00:24,320 Unë jam aktualisht një student i diplomuar në të Shkencave Inxhinierike dhe të Zbatuara. 9 00:00:24,320 --> 00:00:28,330 Kam studiuar një ndërprerje të të mësuarit dhe statistikat makinë 10 00:00:28,330 --> 00:00:31,375 kështu Analiza e të dhënave në R është me të vërtetë themelore për çfarë 11 00:00:31,375 --> 00:00:33,790 Unë bëj në baza ditore. 12 00:00:33,790 --> 00:00:35,710 >> Dhe R është veçanërisht e mirë për analizën e të dhënave 13 00:00:35,710 --> 00:00:39,310 sepse kjo është shumë e mirë për prototyping. 14 00:00:39,310 --> 00:00:43,590 Dhe zakonisht, kur ju jeni duke bërë një lloj i analizës së të dhënave, shumë problemeve 15 00:00:43,590 --> 00:00:44,920 do të njohëse. 16 00:00:44,920 --> 00:00:48,700 Dhe kështu që ju vetëm duan të kenë disa gjuhë me të vërtetë e mirë që 17 00:00:48,700 --> 00:00:53,770 është vetëm e mirë për të bërë ndërtuar në funksione, në krahasim 18 00:00:53,770 --> 00:00:57,430 për të pasur nevojë të merren me gjëra të nivelit të ulët. 19 00:00:57,430 --> 00:01:01,040 Pra, në fillim, unë jam vetëm duke shkuar për të futur çfarë është R, pse do të 20 00:01:01,040 --> 00:01:04,540 ju doni ta përdorni atë, dhe pastaj të shkojë mbi në disa demo, 21 00:01:04,540 --> 00:01:07,060 dhe vetëm të shkojnë në nga atje. 22 00:01:07,060 --> 00:01:08,150 >> Pra, çfarë është R? 23 00:01:08,150 --> 00:01:11,180 R është vetëm një gjuhë e zhvilluar për informatikë statistikore 24 00:01:11,180 --> 00:01:12,450 dhe vizualizimi. 25 00:01:12,450 --> 00:01:16,000 Pra, çfarë kjo do të thotë është se kjo është një gjuhë shumë të shkëlqyer 26 00:01:16,000 --> 00:01:22,400 për çdo lloj gjë që ka të bëjë me Pasiguria apo të dhëna vizualizimi. 27 00:01:22,400 --> 00:01:24,850 Pra, ju keni të gjitha këto Shpërndarjet e probabilitetit. 28 00:01:24,850 --> 00:01:27,140 Nuk do të jetë ndërtuar në funksionet. 29 00:01:27,140 --> 00:01:31,650 Ju gjithashtu do të keni shkëlqyer komplot paketa. 30 00:01:31,650 --> 00:01:34,110 >> Python është një tjetër konkurrente gjuhë për të dhënat. 31 00:01:34,110 --> 00:01:40,020 Dhe një gjë që unë të gjeni se R është shumë më mirë në është vizualizimi. 32 00:01:40,020 --> 00:01:45,200 Pra, çfarë ju do të shihni në demo si mirë është vetëm një gjuhë shumë intuitiv 33 00:01:45,200 --> 00:01:48,050 që vetëm punon jashtëzakonisht mirë. 34 00:01:48,050 --> 00:01:53,140 Ajo është gjithashtu i lirë dhe me burim të hapur, si është ndonjë gjuhë tjetër e mirë I guess. 35 00:01:53,140 --> 00:01:55,440 >> Dhe këtu, një bandë e vetëm fjalë kyçe të hedhur në ju. 36 00:01:55,440 --> 00:02:00,450 Kjo është dinamik, do të thotë në qoftë se ju keni një lloj specifik caktuar për një objekt 37 00:02:00,450 --> 00:02:02,025 se ajo vetëm do të ndryshojë atë në fluturojnë. 38 00:02:02,025 --> 00:02:05,670 Kjo është dembel kështu që është e zgjuar për se si ajo e bën llogaritjet. 39 00:02:05,670 --> 00:02:12,250 Funksional përkatësisht ajo mund të vërtetë të veprojë bazuar jashtë e funksioneve kështu anything-- 40 00:02:12,250 --> 00:02:16,910 çdo lloj i manipulimit të jeni duke bërë, ajo do të jetë i bazuar jashtë funksioneve. 41 00:02:16,910 --> 00:02:20,162 >> Operatorët Pra binare, për shembull, janë funksione vetëm në thelb. 42 00:02:20,162 --> 00:02:21,870 Dhe çdo gjë që ju jeni do të bëni është të 43 00:02:21,870 --> 00:02:24,690 do të ik funksionet vetë. 44 00:02:24,690 --> 00:02:27,140 Dhe pastaj objekt orientuar si. 45 00:02:27,140 --> 00:02:30,930 >> Kështu që këtu është një komplot XKCD. 46 00:02:30,930 --> 00:02:34,350 Jo vetëm sepse unë të ndjehen si XKCD është thelbësore për çdo lloj 47 00:02:34,350 --> 00:02:37,770 e prezantimit, por sepse Ndjehem si kjo me të vërtetë 48 00:02:37,770 --> 00:02:42,160 hammers pikën që një shumë e kohë kur ju jeni duke bërë një lloj të dhënave 49 00:02:42,160 --> 00:02:46,570 Analiza, problemi nuk është aq shumë sa shpejt shkon, 50 00:02:46,570 --> 00:02:49,850 por sa kohë ajo do të ju merr për të programit detyrën. 51 00:02:49,850 --> 00:02:54,112 Kështu që këtu është vetëm analizuar nëse Strategjia e një ose b është më efikas. 52 00:02:54,112 --> 00:02:55,820 Kjo do të jetë diçka që ju jeni 53 00:02:55,820 --> 00:02:58,290 do të merren shumë me të në lloj i Gjuhë të nivelit të ulët 54 00:02:58,290 --> 00:03:03,440 ku ju jeni që kanë të bëjnë me gabimet Seg, Alokimi kujtesës, initializations, 55 00:03:03,440 --> 00:03:05,270 madje duke e bërë funksionet e ndërtuar-në. 56 00:03:05,270 --> 00:03:09,920 Dhe kjo stuff është trajtuar të gjithë shumë, shumë elegante në R. 57 00:03:09,920 --> 00:03:12,839 >> Pra, vetëm për të arritur këtë pikë, bela e madhe 58 00:03:12,839 --> 00:03:13,880 do të jetë njohës. 59 00:03:13,880 --> 00:03:17,341 Pra analiza e të dhënave është një problem shumë i vështirë. 60 00:03:17,341 --> 00:03:19,340 Nëse ju jeni duke bërë të mësuarit makinë ose ju jeni 61 00:03:19,340 --> 00:03:22,550 duke bërë vetëm një lloj të eksplorim bazë të të dhënave, 62 00:03:22,550 --> 00:03:25,290 ju nuk doni të keni për të marrë një dokument 63 00:03:25,290 --> 00:03:27,440 dhe pastaj të përpilojnë diçka çdo herë që 64 00:03:27,440 --> 00:03:31,010 duan të shohin se çfarë një kolonë si duket, atë hyra veçanti në një matriks 65 00:03:31,010 --> 00:03:32,195 duket si. 66 00:03:32,195 --> 00:03:34,320 Pra, ju vetëm duan të kenë disa ndërfaqe të vërtetë e bukur 67 00:03:34,320 --> 00:03:37,740 ju mund të kandidojë një funksion të thjeshtë që indekseve të çfarëdo 68 00:03:37,740 --> 00:03:41,870 ju dëshironi dhe të vetëm të drejtuar atë nga atje. 69 00:03:41,870 --> 00:03:44,190 Dhe ju duhet domain Gjuhë të veçanta për këtë. 70 00:03:44,190 --> 00:03:51,750 Dhe R me të vërtetë do t'ju ndihmojë të përcaktojë Problemi dhe të zgjidhur atë në këtë mënyrë. 71 00:03:51,750 --> 00:03:58,690 >> Kështu që këtu është një që tregon programimit komplot Popullariteti i R si ato zhduken me kalimin e kohës. 72 00:03:58,690 --> 00:04:04,060 Kështu si ju mund të shihni, si 2013 apo kështu që ajo vetëm të hedhur në erë të jashtëzakonshme. 73 00:04:04,060 --> 00:04:09,570 Dhe kjo ka qenë vetëm për shkak të se trend i madh në industrinë e teknologjisë 74 00:04:09,570 --> 00:04:10,590 Të dhënat në lidhje me të mëdha. 75 00:04:10,590 --> 00:04:13,010 Gjithashtu, jo vetëm teknologji industri, por me të vërtetë 76 00:04:13,010 --> 00:04:16,490 ndonjë that-- industri sepse shumë nga industritë 77 00:04:16,490 --> 00:04:20,589 janë lloj i fundamentale për duke u përpjekur për të zgjidhur këto probleme. 78 00:04:20,589 --> 00:04:24,590 Dhe zakonisht, ju mund të ketë disa të mira Mënyra e matjes së këtyre problemeve 79 00:04:24,590 --> 00:04:29,720 apo edhe definimin e tyre ose zgjidhjen e tyre duke përdorur të dhënat. 80 00:04:29,720 --> 00:04:35,430 Kështu që unë mendoj se tani është R 11 gjuha më e popullarizuar në TIOBE 81 00:04:35,430 --> 00:04:38,200 dhe ajo është në rritje që nga atëherë. 82 00:04:38,200 --> 00:04:40,740 83 00:04:40,740 --> 00:04:43,080 >> Kështu që këtu është disa më shumë Tiparet e R. Ajo ka 84 00:04:43,080 --> 00:04:46,900 një numër i madh i pakove dhe për të gjitha këto gjëra të ndryshme. 85 00:04:46,900 --> 00:04:52,470 Pra, çdo herë që ju keni një Problemi i sigurt, më 86 00:04:52,470 --> 00:04:55,060 Ora R do të ketë që funksion për ju. 87 00:04:55,060 --> 00:04:58,520 Pra, nëse ju doni të të ndërtuar një lloj të makinës 88 00:04:58,520 --> 00:05:02,770 të mësuarit algorithm quajtur Random Forest ose Vendim Pemë, 89 00:05:02,770 --> 00:05:07,530 apo edhe duke u përpjekur për të marrë mesataren e një funksion ose ndonjë të këtij stuff, 90 00:05:07,530 --> 00:05:10,000 R do të duhet që. 91 00:05:10,000 --> 00:05:14,190 >> Dhe në qoftë se ju bëni ju intereson optimization, një gjë që është e zakonshme 92 00:05:14,190 --> 00:05:17,430 është se pasi ju jeni bërë prototyping një lloj gjuhe të nivelit të lartë, 93 00:05:17,430 --> 00:05:19,810 ju do të hedhin se in-- ju vetëm do port që gjatë 94 00:05:19,810 --> 00:05:21,550 në disa gjuhë të nivelit të ulët. 95 00:05:21,550 --> 00:05:26,090 Çfarë është e mirë në lidhje me R është se një herë ju jeni bërë prototyping atë, ju mund të kandidojë C ++, 96 00:05:26,090 --> 00:05:29,510 ose Fortran, ose ndonjë nga këto ato të nivelit më të ulët direkt në R. 97 00:05:29,510 --> 00:05:32,320 Pra, kjo është një të vërtetë tipar i ftohtë për R, 98 00:05:32,320 --> 00:05:35,930 në qoftë se ju të vërtetë kujdeset për pikë optimization. 99 00:05:35,930 --> 00:05:39,490 >> Dhe është gjithashtu e vërtetë e mirë për visualizations web. 100 00:05:39,490 --> 00:05:43,530 Pra D3.js, për shembull, është I guess një tjetër seminar 101 00:05:43,530 --> 00:05:45,130 që ne të paraqitur sot. 102 00:05:45,130 --> 00:05:48,510 Dhe kjo është me të vërtetë awesome për duke bërë visualizations interaktive. 103 00:05:48,510 --> 00:05:54,460 Dhe D3.js supozon që ju keni një lloj të dhënave që do të komplotuar 104 00:05:54,460 --> 00:05:58,080 dhe R është një mënyrë e madhe për të qenë në gjendje të bëjë Analiza e të dhënave para se të eksportojë atë 105 00:05:58,080 --> 00:06:04,220 mbi të D3.js apo edhe vetëm të drejtuar D3.js urdhëron në vetë R, 106 00:06:04,220 --> 00:06:08,240 si dhe të gjitha këto bibliotekat e tjera si. 107 00:06:08,240 --> 00:06:13,041 >> Kështu që ishte vetëm futja e çfarë është R dhe pse ju mund të përdorni atë. 108 00:06:13,041 --> 00:06:14,790 Kështu që shpresojmë se, unë kam ju bindur diçka 109 00:06:14,790 --> 00:06:18,460 gati vetëm duke u përpjekur për të parë se çfarë është si. 110 00:06:18,460 --> 00:06:23,930 Kështu që unë jam duke shkuar për të shkuar përpara dhe të shkojnë përmes disa bazat rreth objekteve të R 111 00:06:23,930 --> 00:06:26,150 dhe atë që ju me të vërtetë mund të bëjë. 112 00:06:26,150 --> 00:06:29,690 >> Kështu që këtu është vetëm një bandë e komandave të matematikës. 113 00:06:29,690 --> 00:06:35,000 Pra, thonë you're-- ju doni të ndërtuar vetë gjuha dhe ju vetëm duan 114 00:06:35,000 --> 00:06:38,080 që të ketë një bandë e mjeteve të ndryshme. 115 00:06:38,080 --> 00:06:42,520 Çdo lloj i operacionit ju mendoni se ju do të doni është shumë e shumë do të jetë në R. 116 00:06:42,520 --> 00:06:44,150 >> Pra, këtu është 2 plus 2. 117 00:06:44,150 --> 00:06:46,090 Këtu është 2 herë më e pi. 118 00:06:46,090 --> 00:06:51,870 R ka një bandë e ndërtuar në konstantet që ju do të përdorni shpesh si pi, e. 119 00:06:51,870 --> 00:06:56,230 >> Dhe pastaj, këtu e 7 plus runif, kështu runif i 1. 120 00:06:56,230 --> 00:07:02,450 Ky është një funksion që është gjeneron një uniform rastit nga 0 deri 1. 121 00:07:02,450 --> 00:07:04,400 Dhe pastaj nuk ka 3 për fuqinë e 4. 122 00:07:04,400 --> 00:07:06,430 Nuk ka rrënjët katrore. 123 00:07:06,430 --> 00:07:07,270 >> Ka log. 124 00:07:07,270 --> 00:07:14,500 Pra log do të bëjë bazën eksponenciale në vetvete. 125 00:07:14,500 --> 00:07:18,337 Dhe pastaj, nëse ju specifikoni një bazë, atëherë ju mund të bëni çfarë të doni bazë. 126 00:07:18,337 --> 00:07:19,920 Dhe pastaj këtu janë disa komanda të tjera. 127 00:07:19,920 --> 00:07:22,180 Pra, ju keni 23 mod 2. 128 00:07:22,180 --> 00:07:24,910 Pastaj ju keni pjesën e mbetur. 129 00:07:24,910 --> 00:07:27,110 Pastaj ju keni shkencor simbol nëse ju gjithashtu 130 00:07:27,110 --> 00:07:34,060 duan të bëjnë vetëm më shumë dhe gjërat më të komplikuara. 131 00:07:34,060 --> 00:07:37,320 >> Kështu që këtu është detyrë. 132 00:07:37,320 --> 00:07:40,830 Detyra aq tipike në R është bërë me një shigjetë 133 00:07:40,830 --> 00:07:43,440 kështu që është më pak se dhe pastaj vizë ndarëse. 134 00:07:43,440 --> 00:07:47,250 Kështu që këtu unë jam vetëm caktimin e 3 me val ndryshueshme. 135 00:07:47,250 --> 00:07:50,160 >> Dhe atëherë unë jam i shtypjes nga val dhe pastaj ajo printon nga tre. 136 00:07:50,160 --> 00:07:53,920 By default në R përkthyes, atë do të shtypura gjëra për ju 137 00:07:53,920 --> 00:07:57,280 kështu që ju nuk keni për të specifikojë të shkruar një val çdo herë që doni të shkruar diçka. 138 00:07:57,280 --> 00:08:00,200 Ju vetëm mund të bëjë val dhe atëherë kjo do të bëjë që për ju. 139 00:08:00,200 --> 00:08:04,380 >> Gjithashtu, ju mund të përdorni barabartë teknikisht si një operator detyrës. 140 00:08:04,380 --> 00:08:07,190 Nuk janë hollësitë vogla në mes duke përdorur arrow 141 00:08:07,190 --> 00:08:10,730 operator dhe të barabartë operator për detyra. 142 00:08:10,730 --> 00:08:15,470 Kryesisht nga konventës, të gjithë do të përdorin vetëm operatori shigjetë. 143 00:08:15,470 --> 00:08:21,850 >> Dhe këtu, unë jam caktimin kjo simbol zhdrejtë quhet 1 pika 6. 144 00:08:21,850 --> 00:08:26,010 Kjo gjeneron një vektor nga 1 në 6. 145 00:08:26,010 --> 00:08:29,350 Dhe kjo me të vërtetë e bukur, sepse atëherë ju vetëm të caktojë vektorin në val 146 00:08:29,350 --> 00:08:34,270 dhe që punon në vetvete. 147 00:08:34,270 --> 00:08:37,799 >> Pra, kjo është tashmë duke shkuar nga një single-- një të dhëna shumë intuitiv 148 00:08:37,799 --> 00:08:41,070 Struktura e vetëm një dyfishit të disa lloj tipi në një vektor 149 00:08:41,070 --> 00:08:45,670 dhe e cila do të mbledhë të gjithë vlerat skalar për ju. 150 00:08:45,670 --> 00:08:50,770 Pra, pasi duke shkuar nga skalar, ju kemi R objekte dhe kjo është një vektor. 151 00:08:50,770 --> 00:08:55,610 Një vektor është çdo lloj i Grumbullimi i të njëjtit lloj. 152 00:08:55,610 --> 00:08:58,150 Kështu që këtu janë një bandë e vektorëve. 153 00:08:58,150 --> 00:08:59,800 >> Pra, kjo është numerike. 154 00:08:59,800 --> 00:09:02,440 Numerike është mënyrë e r s i thënë dyfishtë. 155 00:09:02,440 --> 00:09:07,390 Dhe kështu by default, ndonjë numër do të jetë një të dyfishtë. 156 00:09:07,390 --> 00:09:13,150 >> Pra, nëse ju keni c prej 1,1, 3, negative 5.7, c është një funksion. 157 00:09:13,150 --> 00:09:16,760 Kjo concatenates që të tre numra në një vektor. 158 00:09:16,760 --> 00:09:19,619 Dhe kjo do të be-- kështu nëse vëreni 3 në vetvete, 159 00:09:19,619 --> 00:09:21,910 normalisht ju do të supozojmë se kjo është si një numër i plotë, 160 00:09:21,910 --> 00:09:25,050 por sepse të gjithë vektorëve janë të njëjta lloji, 161 00:09:25,050 --> 00:09:28,660 kjo është një vektor i dyshe ose numerike në këtë rast. 162 00:09:28,660 --> 00:09:34,920 >> rnorm është një funksion që gjeneron variables-- standardi normal 163 00:09:34,920 --> 00:09:36,700 ose vlerat standarde normale. 164 00:09:36,700 --> 00:09:38,360 Dhe unë jam duke specifikuar dy prej tyre. 165 00:09:38,360 --> 00:09:43,840 Kështu që unë jam duke bërë rnorm 2, caktimin që të devs, dhe atëherë unë jam shtypjen nga devs. 166 00:09:43,840 --> 00:09:47,350 Pra, këto janë vetëm dy Vlerat normale të rastit. 167 00:09:47,350 --> 00:09:50,060 >> Dhe pastaj ints në qoftë se ju bëni ju intereson integers. 168 00:09:50,060 --> 00:09:54,650 Pra, kjo është vetëm për kujtesën Alokimi dhe kursim madhësia e kujtesës. 169 00:09:54,650 --> 00:10:01,460 Pra, ju do të duhet të append Numrat e tua duke kryeqytet L. 170 00:10:01,460 --> 00:10:04,170 >> Në përgjithësi, kjo është Simbol historik r-së 171 00:10:04,170 --> 00:10:06,940 për diçka të quajtur numër i plotë i gjatë. 172 00:10:06,940 --> 00:10:09,880 Pra, shumica e kohës, ju do të të jetë marrë me dyshe. 173 00:10:09,880 --> 00:10:15,180 Dhe në qoftë se ju do të ndonjëherë më vonë për të optimizuar kodin tuaj, 174 00:10:15,180 --> 00:10:18,110 ju mund të shtoni vetëm këto L's më pas ose gjatë saj 175 00:10:18,110 --> 00:10:22,280 në qoftë se ju jeni si precognitive për atë ju jeni do të bëni këto ndryshore. 176 00:10:22,280 --> 00:10:25,340 177 00:10:25,340 --> 00:10:26,890 >> Kështu që këtu është një vektor karakter. 178 00:10:26,890 --> 00:10:31,440 Pra, përsëri, unë jam duke concatenating Tre vargjet kjo kohë. 179 00:10:31,440 --> 00:10:36,230 Vini re se strings dyfishtë dhe vargjet e vetme janë të njëjta në R. 180 00:10:36,230 --> 00:10:41,000 Kështu që unë kam Arthur dhe marvin-së dhe kështu kur unë jam shtypje atë jashtë, të gjithë ata 181 00:10:41,000 --> 00:10:43,210 do të tregojnë vargjet dyfishta. 182 00:10:43,210 --> 00:10:45,880 Dhe në qoftë se edhe ju doni që të përfshijë string dyfishtë apo të vetme 183 00:10:45,880 --> 00:10:50,070 në karaktere tuaj, atëherë ju mund të ose alternativ vargjet tuaja. 184 00:10:50,070 --> 00:10:53,540 >> Pra marvin-së për Elementi i dytë, kjo është 185 00:10:53,540 --> 00:10:56,380 do të show-- ju vetëm duhet strings dyfishtë 186 00:10:56,380 --> 00:10:59,050 dhe pastaj një varg i vetëm kështu që kjo është e alternuara. 187 00:10:59,050 --> 00:11:04,040 Përndryshe, në qoftë se ju doni të përdorni një të dyfishtë operator string në një varg të dyfishtë 188 00:11:04,040 --> 00:11:07,090 kur ju jeni duke deklaruar atë, atëherë ju vetëm përdorni operatorin shpëtojnë. 189 00:11:07,090 --> 00:11:10,600 Kështu që ju bëni backslash string dyfishtë. 190 00:11:10,600 --> 00:11:13,330 >> Dhe më në fund, ne gjithashtu kanë vektorëve logjike. 191 00:11:13,330 --> 00:11:15,890 Pra logical-- kështu TRUE dhe FALSE, dhe ata janë 192 00:11:15,890 --> 00:11:18,880 do të jenë të gjitha shkronja kapitale. 193 00:11:18,880 --> 00:11:22,370 Dhe pastaj, përsëri, unë jam duke concatenating ata dhe pastaj caktimin e tyre për bools. 194 00:11:22,370 --> 00:11:24,590 Pra bools është duke shkuar për të treguar ju TRUE, FALSE, dhe TRUE. 195 00:11:24,590 --> 00:11:28,280 196 00:11:28,280 --> 00:11:31,620 >> Kështu që këtu është indeksimit vectorized. 197 00:11:31,620 --> 00:11:34,870 Pra, në fillim, unë jam duke marrë një function-- 198 00:11:34,870 --> 00:11:39,230 kjo quhet një sequence-- sekuencë 2-12. 199 00:11:39,230 --> 00:11:42,490 Dhe unë jam duke marrë një sekuencë nga 2. 200 00:11:42,490 --> 00:11:46,660 Kështu ajo do të bëjë 2, 4, 6, 8, 10 dhe 12. 201 00:11:46,660 --> 00:11:50,080 Dhe pastaj, unë jam i indeksimit për të marrë elementin e tretë. 202 00:11:50,080 --> 00:11:55,770 >> Pra, një gjë për të mbajtur në mend është se indekset R duke filluar nga 1. 203 00:11:55,770 --> 00:12:00,550 Pra i besueshmërisë 3 është duke shkuar për të dhënë ju element i tretë. 204 00:12:00,550 --> 00:12:04,580 Kjo është lloj i ndryshëm nga tjetri Gjuhë ku ajo fillon nga zero. 205 00:12:04,580 --> 00:12:09,780 Pra në C ose C ++, për shembull, ju jeni shkuar për të marrë elementin e katërt. 206 00:12:09,780 --> 00:12:13,280 >> Dhe këtu është Vals nga 3 në 5. 207 00:12:13,280 --> 00:12:16,030 Pra, një gjë që është e me të vërtetë ftohtë është se ju 208 00:12:16,030 --> 00:12:20,410 mund të gjenerojnë të variablave të përkohshme brenda dhe pastaj vetëm të përdorin ato në fluturojnë. 209 00:12:20,410 --> 00:12:21,960 Kështu që këtu është 3 deri 5. 210 00:12:21,960 --> 00:12:25,070 Kështu që unë jam duke gjeneruar një vektor 3, 4, 5 dhe pastaj 211 00:12:25,070 --> 00:12:29,700 Unë jam indeksimin për të marrë të tretën, katërt, pestë dhe elemente. 212 00:12:29,700 --> 00:12:32,280 >> Pra, në mënyrë të ngjashme, ju mund të abstrakt ky për të vetëm të bëjë 213 00:12:32,280 --> 00:12:35,280 çdo lloj i një vektor që ju jep indeksimit. 214 00:12:35,280 --> 00:12:40,050 Kështu që këtu është Vals dhe pastaj Elementët e parë, të tretë, dhe të gjashtë. 215 00:12:40,050 --> 00:12:42,800 Dhe pastaj, në qoftë se ju doni për të bërë një plotësues, 216 00:12:42,800 --> 00:12:45,210 kështu që ju vetëm bëni minus më pas dhe që do të 217 00:12:45,210 --> 00:12:48,600 ju jap çdo gjë që nuk është së pari, të tretë, ose element i gjashtë. 218 00:12:48,600 --> 00:12:51,590 Pra, kjo do të jetë 4, 8, dhe 10. 219 00:12:51,590 --> 00:12:54,380 >> Dhe në qoftë se ju doni të merrni edhe më të avancuar, 220 00:12:54,380 --> 00:12:57,610 ju mund të lidh vektorëve boolean. 221 00:12:57,610 --> 00:13:05,210 Pra, ky indeks do të ju jap ky vektor Boolean e gjatësi 6. 222 00:13:05,210 --> 00:13:07,280 Pra rep presje TRUE 3. 223 00:13:07,280 --> 00:13:09,680 Kjo do të përsërisë TRUE tri herë. 224 00:13:09,680 --> 00:13:12,900 Pra, kjo do të ju jap një vektor TRUE, TRUE, TRUE. 225 00:13:12,900 --> 00:13:17,470 >> rep FALSE 4-- kjo do të ju jap një vektor i FALSE, FALSE, FALSE, FALSE. 226 00:13:17,470 --> 00:13:21,280 Dhe pastaj c do të lidh këto dy Booleans së bashku. 227 00:13:21,280 --> 00:13:24,090 Pra, ju jeni do të merrni tre TRUEs dhe pastaj katër FALSEs. 228 00:13:24,090 --> 00:13:28,460 >> Kështu që kur ju Vals indeksit, ju jeni do të merrni TRUE, TRUE, TRUE. 229 00:13:28,460 --> 00:13:31,420 Kështu që do të them po, Unë dua këto tre elemente. 230 00:13:31,420 --> 00:13:33,520 Dhe pastaj FALSE, FALSE, FALSE, FALSE po shkon 231 00:13:33,520 --> 00:13:37,140 për të thënë jo, unë nuk dua ato elemente kështu ai nuk do të kthehen ato. 232 00:13:37,140 --> 00:13:41,490 >> Dhe unë mendoj se ka në të vërtetë një typo këtu sepse kjo është e thënë të përsëritur TRUE 3 233 00:13:41,490 --> 00:13:47,990 dhe të përsëritur RREME 4, dhe teknikisht, ju kanë vetëm gjashtë elemente kaq të përsëritur FALSE, 234 00:13:47,990 --> 00:13:50,470 ajo duhet të jetë përsëritje FALSE 3. 235 00:13:50,470 --> 00:13:55,260 Unë mendoj R është gjithashtu mjaft i zgjuar për të tilla se në qoftë se ju vetëm të specifikojë 4 këtu, atëherë 236 00:13:55,260 --> 00:13:56,630 ajo nuk do të madje gabim jashtë. 237 00:13:56,630 --> 00:13:58,480 Ajo thjesht do të ju jap këtë vlerë. 238 00:13:58,480 --> 00:14:00,970 Kështu ajo do të injorojë vetëm atë FALSE katërt. 239 00:14:00,970 --> 00:14:05,310 240 00:14:05,310 --> 00:14:09,270 >> Kështu që këtu është detyrë vectorized. 241 00:14:09,270 --> 00:14:15,480 Pra set.seed-- kjo vetëm përcakton farë për numrat pseudorandom. 242 00:14:15,480 --> 00:14:20,110 Kështu që unë jam vendosjen farën në 42, do të thotë se në qoftë se unë të gjenerojnë 243 00:14:20,110 --> 00:14:22,950 tre të rastit normal Vlerat, dhe pastaj nëse ju 244 00:14:22,950 --> 00:14:27,400 drejtuar set.seed në tuaj kompjuter duke përdorur të njëjtën vlerë 42, 245 00:14:27,400 --> 00:14:30,990 atëherë edhe ju të merrni tre normals njëjtat të rastit. 246 00:14:30,990 --> 00:14:33,411 >> Pra, kjo është me të vërtetë e mirë për riprodhueshmërisë. 247 00:14:33,411 --> 00:14:35,910 Zakonisht, kur ju jeni duke bërë disa lloj analize shkencore, 248 00:14:35,910 --> 00:14:37,230 ju do të duan të vënë farën. 249 00:14:37,230 --> 00:14:41,270 Në këtë mënyrë shkencëtarë të tjerë mund vetëm riprodhuar kodin e njëjtë e saktë që ju keni bërë në 250 00:14:41,270 --> 00:14:44,790 bërë për shkak se ata do të kenë saktë variabla të njëjta të rastit that-- ose të rastit 251 00:14:44,790 --> 00:14:47,270 Vlerat që ju keni marrë jashtë si. 252 00:14:47,270 --> 00:14:49,870 253 00:14:49,870 --> 00:14:53,910 >> Dhe kështu detyrë vectorized këtu është duke treguar Vals 1 nga 2. 254 00:14:53,910 --> 00:14:59,290 Pra, ajo merr dy elementet e para e besueshmërisë dhe pastaj cakton ata për 0. 255 00:14:59,290 --> 00:15:03,940 Dhe pastaj, ju mund të bëni vetëm gjë e ngjashme me Booleans. 256 00:15:03,940 --> 00:15:09,340 >> Pra Vals nuk është e barabartë me 0-- këtë vullnet ju jap një vektor i rremë, FALSE, TRUE 257 00:15:09,340 --> 00:15:10,350 në këtë rast. 258 00:15:10,350 --> 00:15:13,770 Dhe pastaj, ajo do të thonë se çdo e këtyre indekseve që ishin TRUE, 259 00:15:13,770 --> 00:15:15,270 atëherë ajo do të caktojë që për 5. 260 00:15:15,270 --> 00:15:18,790 Pra, ajo merr elementin e tretë këtu dhe pastaj cakton atë për 5. 261 00:15:18,790 --> 00:15:22,300 >> Dhe kjo është me të vërtetë e bukur në krahasim me gjuhë të nivelit të ulët 262 00:15:22,300 --> 00:15:25,560 ku ju keni për të përdorur për sythe për të bërë të gjitha të këtij stuff vectorized 263 00:15:25,560 --> 00:15:30,281 sepse kjo është vetëm shumë intuitiv dhe kjo është një e vetme një-astar. 264 00:15:30,281 --> 00:15:32,030 Dhe çfarë është gati i madh simbol vectorized 265 00:15:32,030 --> 00:15:37,020 është se në R, këto janë lloj i ndërtuar në mënyrë që ata janë pothuajse aq shpejt 266 00:15:37,020 --> 00:15:42,490 si duke bërë në një gjuhë të nivelit të ulët si krahasim me të bërë një për lak në R 267 00:15:42,490 --> 00:15:46,317 dhe pastaj pasur nevojë që ajo të bëjë vetë indeksimit dinamik. 268 00:15:46,317 --> 00:15:48,900 Dhe kjo do të jetë më i ngadalshëm se sa duke bërë kjo gjë e tillë vectorized 269 00:15:48,900 --> 00:15:55,950 ku ajo mund ta bëjë këtë në mënyrë paralele, ku kjo e bën atë në fillesë thelb. 270 00:15:55,950 --> 00:15:58,650 >> Kështu që këtu është vectorized operacionet. 271 00:15:58,650 --> 00:16:04,920 Kështu I m gjeneruar një vlerë 1 deri 3, caktimin që të vec1, 3 deri 5, vec2, 272 00:16:04,920 --> 00:16:05,950 duke shtuar ato së bashku. 273 00:16:05,950 --> 00:16:11,490 Ajo shton atyre komponent-i mençur kështu është 1 plus 3, 2 plus 4, dhe kështu me radhë. 274 00:16:11,490 --> 00:16:13,330 >> vec1 herë vec2. 275 00:16:13,330 --> 00:16:16,110 Kjo shumëfishon dy vlerat komponent i mençur. 276 00:16:16,110 --> 00:16:21,830 Pra, kjo është 1 herë 3, 2 herë 4, dhe pastaj 3 herë 5. 277 00:16:21,830 --> 00:16:28,250 >> Dhe pastaj, në mënyrë të ngjashme ju gjithashtu mund të bëjë comparisons-- krahasime logjike. 278 00:16:28,250 --> 00:16:33,640 Pra, kjo është FALSE FALSE TRUE në këtë rast sepse 1 është jo më i madh se 3, 279 00:16:33,640 --> 00:16:35,920 2 është jo më i madh se 4. 280 00:16:35,920 --> 00:16:41,160 Kjo është, unë mendoj, një tjetër gabim gjatë shtypit, 3 nuk është aspak më i madh se 5. 281 00:16:41,160 --> 00:16:41,660 Vërtet. 282 00:16:41,660 --> 00:16:45,770 Dhe kështu që ju vetëm mund të bëjë gjithçka këto operacione të thjeshta 283 00:16:45,770 --> 00:16:48,350 sepse i trashëguar i tyre nga vetë klasa. 284 00:16:48,350 --> 00:16:51,110 285 00:16:51,110 --> 00:16:52,580 >> Kështu që ishte vetëm vektor. 286 00:16:52,580 --> 00:16:56,530 Dhe kjo është lloj i më fundamental R objekt sepse dhënë një vektor, 287 00:16:56,530 --> 00:16:59,170 ju mund të ndërtojnë objekte më të përparuara. 288 00:16:59,170 --> 00:17:00,560 >> Kështu që këtu është një matricë. 289 00:17:00,560 --> 00:17:05,030 Kjo është në thelb abstraksion i asaj që një matricë është vetë. 290 00:17:05,030 --> 00:17:10,099 Pra në këtë rast, është e tri ndryshme vektorët, ku secili prej tyre është një kolonë, 291 00:17:10,099 --> 00:17:12,710 ose ju mund të konsiderojnë atë si çdo një është një rresht. 292 00:17:12,710 --> 00:17:18,250 >> Kështu që unë jam magazinimin e një matricë prej 1 deri 9 dhe pastaj unë jam duke specifikuar 3 rreshtave. 293 00:17:18,250 --> 00:17:23,364 Pra 1 deri 9 do të ju jap një vektor 1, 2, 3, 4, 5, 6, dhe të gjithë mënyrë në 9. 294 00:17:23,364 --> 00:17:29,250 >> Një gjë për të mbajtur gjithashtu në mend është se Dyqane R vlerat në format kolonën-madh. 295 00:17:29,250 --> 00:17:34,160 Pra, me fjalë të tjera, kur ju shihni 1 në 9, ajo do të ruajë them-- 296 00:17:34,160 --> 00:17:36,370 ajo do të jetë 1, 2, 3 në kolonën e parë, 297 00:17:36,370 --> 00:17:38,510 dhe atëherë ai do të bëj 4, 5, 6 në kolonën e dytë, 298 00:17:38,510 --> 00:17:41,440 dhe pastaj 7, 8, 9 në kolonën e trete. 299 00:17:41,440 --> 00:17:45,570 >> Dhe këtu janë disa të tjera Funksionet e përbashkëta ju mund të përdorni. 300 00:17:45,570 --> 00:17:49,650 Pra mat dim, kjo do të ju jap dimensionet e matricës. 301 00:17:49,650 --> 00:17:52,620 Ajo do të kthehet ty një vektor i dimensionit. 302 00:17:52,620 --> 00:17:55,580 Pra në këtë rast, sepse matricë tonë është 3 nga 3, 303 00:17:55,580 --> 00:18:01,900 ajo do të ju jap një vektor numerike kjo është 3 3. 304 00:18:01,900 --> 00:18:05,270 >> Dhe këtu është vetëm duke treguar shumëzimit matricës. 305 00:18:05,270 --> 00:18:11,970 Pra, zakonisht, në qoftë se ju vetëm bëni asterisk-- kështu mat asterisk mat-- 306 00:18:11,970 --> 00:18:15,380 kjo do të jetë operacion komponent-i mençur 307 00:18:15,380 --> 00:18:17,300 ose çfarë quhet produkt Hadamard. 308 00:18:17,300 --> 00:18:21,310 Kështu ajo do të bëjë çdo element përbërës-i mençur. 309 00:18:21,310 --> 00:18:23,610 Megjithatë, në qoftë se ju doni matricë multiplication-- 310 00:18:23,610 --> 00:18:29,380 kështu shumëzuar kohët e para rresht kolona e parë të matricës të dytë 311 00:18:29,380 --> 00:18:34,510 dhe kështu on-- ju do të përdorni ky operacion qind. 312 00:18:34,510 --> 00:18:38,110 >> Dhe t i mat është vetëm një operacion për të transpozuar. 313 00:18:38,110 --> 00:18:42,590 Kështu që unë jam duke thënë se të marrë zhvendos në matrix, shumohen atë me matricën 314 00:18:42,590 --> 00:18:43,090 vetë. 315 00:18:43,090 --> 00:18:45,006 Dhe atëherë ajo do të të kthehet tek ju një tjetër 3 316 00:18:45,006 --> 00:18:50,700 nga 3 matricës treguar produkt ju do të doni. 317 00:18:50,700 --> 00:18:53,750 >> Dhe kështu që ishte e matricës. 318 00:18:53,750 --> 00:18:56,020 Këtu është ajo që quhet një kornizë të dhënave. 319 00:18:56,020 --> 00:19:00,780 Një kornizë të dhëna ju mund të mendoni si një matricë, por çdo kolonë vetë 320 00:19:00,780 --> 00:19:02,990 do të jetë i një lloji tjetër. 321 00:19:02,990 --> 00:19:07,320 >> Pra, çfarë është me të vërtetë ftohtë në lidhje me të dhënat e korniza është se në analizën e të dhënave vetë, 322 00:19:07,320 --> 00:19:11,260 ju jeni do të ketë e gjithë kjo të dhëna heterogjene dhe të gjitha këto me të vërtetë 323 00:19:11,260 --> 00:19:15,640 gjëra të çrregullt ku secili prej kolonave vetë mund të jenë të llojeve të ndryshme. 324 00:19:15,640 --> 00:19:21,460 Kështu që këtu unë jam duke thënë të krijojë një frame dhënave, bëjë ints nga 1 deri 3, 325 00:19:21,460 --> 00:19:24,750 dhe pastaj të ketë gjithashtu një vektor karakter. 326 00:19:24,750 --> 00:19:28,470 Kështu që unë mund indeksin përmes secili prej këtyre kolonave 327 00:19:28,470 --> 00:19:30,930 dhe pastaj unë do të merrni vetë vlerat. 328 00:19:30,930 --> 00:19:34,370 Dhe ju gjithashtu mund të bëjë një lloj i operacioneve në korniza të dhënave. 329 00:19:34,370 --> 00:19:38,040 Dhe shumica e kohës kur ju jeni duke bërë analiza të të dhënave ose disa lloj 330 00:19:38,040 --> 00:19:42,042 i preprocessing, ju do të jetë duke punuar me këto struktura të dhënash 331 00:19:42,042 --> 00:19:44,250 ku secila kolonë po shkon që të jetë i një lloji tjetër. 332 00:19:44,250 --> 00:19:47,880 333 00:19:47,880 --> 00:19:52,970 >> Më në fund, kështu që këto janë në thelb vetëm katër objekte thelbësore në R. Lista 334 00:19:52,970 --> 00:19:55,820 do të mbledhë vetëm ndonjë objekte të tjera që ju dëshironi. 335 00:19:55,820 --> 00:20:00,130 Pra, kjo do të ruajtur këtë në një variabël që ju lehtë mund të hyni. 336 00:20:00,130 --> 00:20:02,370 >> Kështu që këtu, unë jam duke marrë një listë. 337 00:20:02,370 --> 00:20:04,460 Unë jam duke thënë gjëra të barabartë 3. 338 00:20:04,460 --> 00:20:08,060 Kështu që unë jam do të ketë një element në lista, dhe kjo quhet gjëra, 339 00:20:08,060 --> 00:20:10,570 dhe ajo do të ketë vlerën 3. 340 00:20:10,570 --> 00:20:13,140 >> Unë gjithashtu mund të krijojnë një matricë. 341 00:20:13,140 --> 00:20:17,970 Kështu kjo eshte 1 deri ne 4 dhe rresht fund është e barabartë me 2, kështu që një 2 nga 2 matricë. 342 00:20:17,970 --> 00:20:20,270 Gjithashtu në listë dhe është quajtur mat. 343 00:20:20,270 --> 00:20:24,690 moreStuff, një varg karakter, dhe madje edhe një tjetër listë në vetvete. 344 00:20:24,690 --> 00:20:27,710 >> Pra, kjo është një listë që është 5 dhe ariun. 345 00:20:27,710 --> 00:20:30,990 Pra, ajo ka vlerën 5 dhe atë ka të mbajnë string karakter 346 00:20:30,990 --> 00:20:32,710 dhe kjo është një listë brenda një listë. 347 00:20:32,710 --> 00:20:35,965 Kështu që ju mund të keni këto gjëra gjithkund rekursive ku 348 00:20:35,965 --> 00:20:38,230 ju keni another-- a lloji brenda llojit. 349 00:20:38,230 --> 00:20:41,420 Pra, në mënyrë të ngjashme, ju mund të ketë një matricë brenda një matricë dhe kështu me radhë. 350 00:20:41,420 --> 00:20:44,264 Dhe një listë është vetëm një mënyrë e mirë e mbledhjes dhe përmbledhë 351 00:20:44,264 --> 00:20:45,430 të gjitha këto objekte të ndryshme. 352 00:20:45,430 --> 00:20:50,210 353 00:20:50,210 --> 00:20:57,150 >> Dhe së fundi, këtu është vetëm të ndihmojë në rast kjo ishte zhdukur pak më shumë se shumë shpejt. 354 00:20:57,150 --> 00:21:01,350 Pra, në çdo kohë që ju jeni të hutuar për një lloj të funksionit, 355 00:21:01,350 --> 00:21:03,510 ju mund të bëni për ndihmën e atij funksioni. 356 00:21:03,510 --> 00:21:07,120 Kështu që ju mund të bëni ndihmë matricë ose një matricë pikëpyetje. 357 00:21:07,120 --> 00:21:11,430 Dhe ndihmë dhe pikëpyetje janë vetëm stenografi për të njëjtën gjë 358 00:21:11,430 --> 00:21:13,040 kështu që ata janë emërtimet. 359 00:21:13,040 --> 00:21:16,820 >> lm është një funksion që vetëm e bën një model linear. 360 00:21:16,820 --> 00:21:20,340 Por në qoftë se ju vetëm nuk kanë asnjë ide se si se Punimet, ju mund të bëni vetëm ndihmën e LM 361 00:21:20,340 --> 00:21:24,610 dhe se do të ju jap disa lloj i dokumentacionit që 362 00:21:24,610 --> 00:21:27,960 duket lloj si një faqe burrë në Unix, ku 363 00:21:27,960 --> 00:21:34,210 ju keni një përshkrim të shkurtër të asaj që e bën atë, edhe çfarë argumentet e saj janë, 364 00:21:34,210 --> 00:21:38,850 çfarë ajo kthehet, dhe vetëm këshilla se si të përdorin atë, dhe disa shembuj si. 365 00:21:38,850 --> 00:21:41,680 366 00:21:41,680 --> 00:21:52,890 >> Pra më lejoni të shkoj përpara dhe të tregojnë disa demo e përdorimit R. OK. 367 00:21:52,890 --> 00:21:55,470 Kështu që unë shkova mbi shumë shpejt vetëm të dhënat e 368 00:21:55,470 --> 00:21:59,440 strukturat dhe disa lloj op-- disa operacioneve. 369 00:21:59,440 --> 00:22:02,960 Këtu është disa funksione. 370 00:22:02,960 --> 00:22:06,750 >> Kështu që këtu unë jam vetëm duke shkuar për të përcaktuar një funksion. 371 00:22:06,750 --> 00:22:09,970 Kështu që unë jam gjithashtu duke përdorur operator detyrë këtu, 372 00:22:09,970 --> 00:22:12,610 dhe atëherë unë jam duke thënë deklaroj atë si një funksion. 373 00:22:12,610 --> 00:22:14,140 Dhe ajo merr vlerën e x. 374 00:22:14,140 --> 00:22:18,210 Pra, kjo është ndonjë vlerë të doni dhe unë jam duke shkuar për të kthyer x vetvete. 375 00:22:18,210 --> 00:22:20,840 Pra, ky është funksioni identiteti. 376 00:22:20,840 --> 00:22:23,670 >> Dhe çfarë është e ftohtë në lidhje me këtë në krahasim me gjuhët e tjera 377 00:22:23,670 --> 00:22:26,330 dhe një tjetër të nivelit të ulët Gjuhë të është se x 378 00:22:26,330 --> 00:22:29,350 mund të jetë e çdo lloji vetë dhe ajo do të kthehet atë lloj. 379 00:22:29,350 --> 00:22:35,251 Kështu që ju mund imagine-- kështu le të mua vetëm të drejtuar këtë shpejt. 380 00:22:35,251 --> 00:22:35,750 Më vjen keq. 381 00:22:35,750 --> 00:22:40,300 >> Kështu që një gjë unë duhet të përmend është se ky redaktor unë jam duke përdorur 382 00:22:40,300 --> 00:22:41,380 quhet rstudio. 383 00:22:41,380 --> 00:22:44,389 Kjo është ajo që quhet një IDE. 384 00:22:44,389 --> 00:22:46,180 Dhe një gjë që është e të vërtetë e bukur në lidhje me këtë 385 00:22:46,180 --> 00:22:51,500 është se ajo përfshin një shumë të gjërat që ju doni të bëni në R vetvete 386 00:22:51,500 --> 00:22:53,180 vetëm shumë intuitive. 387 00:22:53,180 --> 00:22:55,550 >> Kështu që këtu është një përkthyes console. 388 00:22:55,550 --> 00:23:02,160 Pra, në mënyrë të ngjashme, ju gjithashtu mund të merrni këtë konsol papërpunuara vetëm duke bërë një R. kapitalit 389 00:23:02,160 --> 00:23:05,630 Dhe kjo është pikërisht njëjta gjë si tastierë. 390 00:23:05,630 --> 00:23:12,210 Kështu që unë mund të bëjë vetëm funksion id x, x, x. 391 00:23:12,210 --> 00:23:16,130 Dhe then-- dhe pastaj se do të jetë vetë gjobë. 392 00:23:16,130 --> 00:23:19,200 393 00:23:19,200 --> 00:23:21,740 >> Pra rstudio është e madhe sepse ajo ka konsol. 394 00:23:21,740 --> 00:23:25,360 Ai ka gjithashtu edhe dokumentet ju dëshironi për të kandiduar më. 395 00:23:25,360 --> 00:23:28,629 Dhe atëherë ajo ka disa variabla që ju mund të shihni në mjedise. 396 00:23:28,629 --> 00:23:30,420 Dhe pastaj, në qoftë se ju keni për të bërë komplote, atëherë ju 397 00:23:30,420 --> 00:23:33,730 mund të shohim vetëm atë këtu, në krahasim me menaxhimin e të gjitha këtyre dritareve të ndryshme 398 00:23:33,730 --> 00:23:35,940 me veten e tyre. 399 00:23:35,940 --> 00:23:40,530 >> Unë në fakt personalisht e përdorin VIM, por unë të ndjehen si rstudio është e shkëlqyer vetëm 400 00:23:40,530 --> 00:23:44,640 për marrjen e një ide e mirë e si të përdorin R. Zakonisht, 401 00:23:44,640 --> 00:23:47,040 kur ju jeni duke u përpjekur për të të mësojnë disa detyrë të re, 402 00:23:47,040 --> 00:23:49,590 ju nuk doni për të trajtuar shumë gjëra në të njëjtën kohë. 403 00:23:49,590 --> 00:23:53,120 Pra, R është vetëm një rstudio very-- është një mënyrë shumë e mirë e të mësuarit R 404 00:23:53,120 --> 00:23:56,760 pa pasur nevojë të merren me të gjitha këto gjëra të tjera. 405 00:23:56,760 --> 00:23:58,600 >> Kështu që këtu unë jam duke id përshëndetje. 406 00:23:58,600 --> 00:24:00,090 Kjo kthen përshëndetje. 407 00:24:00,090 --> 00:24:01,740 id 123. 408 00:24:01,740 --> 00:24:04,610 Këtu është një vektor i numra të plotë. 409 00:24:04,610 --> 00:24:08,620 Pra në mënyrë të ngjashme, sepse ju mund të marrë ndonjë një lloj të vlerës, 410 00:24:08,620 --> 00:24:16,060 ju mund të bëni të kthehej id e x kështu që ajo të kthehet 1234 dhe 5. 411 00:24:16,060 --> 00:24:22,210 >> Dhe më lejoni vetëm të ju tregojnë se kjo është me të vërtetë një numër të plotë. 412 00:24:22,210 --> 00:24:28,800 Dhe në mënyrë të ngjashme, në qoftë se ju bëni klasë id x, ajo do të jetë numër i plotë. 413 00:24:28,800 --> 00:24:34,170 Dhe pastaj, ju gjithashtu mund të krahasojnë të dy dhe kjo është TRUE. 414 00:24:34,170 --> 00:24:38,350 Kështu që unë jam duke kontrolluar nëse id e x është e barabartë e barabartë me x dhe njoftimin 415 00:24:38,350 --> 00:24:39,760 se ajo ju jep dy TRUEs. 416 00:24:39,760 --> 00:24:44,280 Pra, kjo nuk është e thënë të dy objekte identike, 417 00:24:44,280 --> 00:24:46,845 por jane secili prej hyra brenda vektorët identike. 418 00:24:46,845 --> 00:24:50,000 419 00:24:50,000 --> 00:24:52,090 >> Këtu është bounded.compare. 420 00:24:52,090 --> 00:24:58,470 Pra, kjo është pak më e komplikuar në atë që ajo ka një nëse kusht dhe tjetër 421 00:24:58,470 --> 00:25:00,960 dhe pastaj ajo merr dy Argumentet në një kohë. 422 00:25:00,960 --> 00:25:02,640 Pra, x është e çdo lloji. 423 00:25:02,640 --> 00:25:06,280 Dhe unë jam duke thënë se kjo argumenti dytë është a. 424 00:25:06,280 --> 00:25:08,380 Kjo mund të jetë çdo gjë si. 425 00:25:08,380 --> 00:25:12,490 Por nga default, ajo do të marrë 5 në qoftë se ju nuk e specifikon asgjë. 426 00:25:12,490 --> 00:25:16,730 >> Kështu që këtu unë jam duke shkuar për të thënë nëse x është më i madh se a. 427 00:25:16,730 --> 00:25:19,220 Pra, në qoftë se unë nuk e specifikon një, atë thotë nëse x është më i madh se 5, 428 00:25:19,220 --> 00:25:20,470 atëherë unë jam duke shkuar për t'u kthyer TRUE. 429 00:25:20,470 --> 00:25:23,230 tjetër, Unë jam duke shkuar për t'u kthyer FALSE. 430 00:25:23,230 --> 00:25:24,870 Pra më lejoni të shkoj përpara dhe të përcaktojë këtë. 431 00:25:24,870 --> 00:25:30,600 432 00:25:30,600 --> 00:25:34,550 >> Dhe tani unë jam duke shkuar për të drejtuar bounded.compare 3. 433 00:25:34,550 --> 00:25:39,150 Pra, ajo thotë se është 3 më pak than-- është 3 madh se 5. 434 00:25:39,150 --> 00:25:41,830 Jo, nuk është kështu FALSE. 435 00:25:41,830 --> 00:25:46,550 >> Dhe bounded.compare 3 dhe unë jam duke shkuar të krahasojnë atë duke përdorur një është e barabartë me 2. 436 00:25:46,550 --> 00:25:50,700 Kështu që tani unë jam duke thënë se po, tani unë duan një të jetë diçka tjetër. 437 00:25:50,700 --> 00:25:52,750 Kështu që unë jam duke shkuar për të thonë se një, ju duhet të jetë 2. 438 00:25:52,750 --> 00:25:56,640 >> Unë as mund ta bëjë këtë lloj të simbol apo unë them një është e barabartë me 2. 439 00:25:56,640 --> 00:25:58,720 Kjo është një më i lexueshëm në që kur ju jeni 440 00:25:58,720 --> 00:26:01,450 duke kërkuar në këto të vërtetë Funksionet e komplikuara se 441 00:26:01,450 --> 00:26:08,110 merr arguments-- të shumta dhe kjo mund të jetë dhjetra oftentimes-- vetëm duke thënë 442 00:26:08,110 --> 00:26:11,140 një është e barabartë me 2 është më i lexueshëm për ju në mënyrë që më vonë në të ardhmen 443 00:26:11,140 --> 00:26:13,020 ju do të dini se çfarë jeni duke bërë. 444 00:26:13,020 --> 00:26:17,120 >> Pra në këtë rast, unë jam duke thënë se është 3 më i madh se 2. 445 00:26:17,120 --> 00:26:18,270 Po ajo është. 446 00:26:18,270 --> 00:26:22,350 Dhe në mënyrë të ngjashme, unë vetëm mund të hiqni këtë dhe thonë, është 3 më i madh se 2 447 00:26:22,350 --> 00:26:23,440 ku një është e barabartë me 2. 448 00:26:23,440 --> 00:26:26,230 Dhe kjo është gjithashtu TRUE. 449 00:26:26,230 --> 00:26:26,730 Po? 450 00:26:26,730 --> 00:26:29,670 >> AUDIENCA: A jeni ekzekutimin rresht pas rreshti? 451 00:26:29,670 --> 00:26:30,670 >> Dustin Tran: Po unë jam. 452 00:26:30,670 --> 00:26:33,900 Pra, ajo që unë jam duke bërë këtu është duke marrë këtë tekst document-- 453 00:26:33,900 --> 00:26:39,825 dhe çfarë është e madhe në lidhje rstudio është se Unë vetëm mund të kandidojë një short-- një shkurtore kyç. 454 00:26:39,825 --> 00:26:41,820 Kështu që unë jam duke bërë Kontrollit-Enter. 455 00:26:41,820 --> 00:26:44,850 >> Dhe pastaj, unë jam duke marrë vijë në dokumentin e tekstit 456 00:26:44,850 --> 00:26:46,710 dhe pastaj të vënë në tastierë. 457 00:26:46,710 --> 00:26:50,800 Kështu që këtu unë jam duke thënë, bounded.compare dhe unë jam duke bërë Kontrollit-X. 458 00:26:50,800 --> 00:26:52,540 Kështu që unë vetëm mund të do të kandidojë si edhe këtu. 459 00:26:52,540 --> 00:26:54,920 Dhe pastaj se do të marrë line dhe pastaj e vënë atë këtu. 460 00:26:54,920 --> 00:26:57,900 Dhe pastaj në mënyrë të ngjashme, unë mund të do të kandidojë këtu. 461 00:26:57,900 --> 00:27:04,630 Dhe atëherë ajo vetëm do të mbajë përkufizimin linjat në tastierë si kjo. 462 00:27:04,630 --> 00:27:10,690 >> Dhe në qoftë se ju gjithashtu të vini re kaçurrel formatimin e teksteve janë atje vetëm si në C sintaksë. 463 00:27:10,690 --> 00:27:13,910 x-- nëse nëse kusht është gjithashtu do të përdorni kllapa dhe pastaj 464 00:27:13,910 --> 00:27:15,350 ju mund të përdorni tjetër. 465 00:27:15,350 --> 00:27:17,496 Një tjetër është tjetër nëse. 466 00:27:17,496 --> 00:27:21,440 Pra, kjo do të jetë x është e barabartë është e barabartë me një, për shembull. 467 00:27:21,440 --> 00:27:24,190 468 00:27:24,190 --> 00:27:26,350 Dhe atëherë unë jam duke shkuar për të diçka të kthehen këtu. 469 00:27:26,350 --> 00:27:29,490 >> Vini re se ka dy të ndryshme gjërat këtu që po ndodh. 470 00:27:29,490 --> 00:27:34,360 Njëra është që këtu unë jam duke specifikuar kthehet vlera TRUE. 471 00:27:34,360 --> 00:27:35,950 Këtu unë jam vetëm duke thënë x. 472 00:27:35,950 --> 00:27:39,970 Pra R do të zakonisht nga default marrë arguments-- fundit 473 00:27:39,970 --> 00:27:43,510 ose të marrë linjë e fundit e kodit, dhe se do të jetë ajo që është e kthyer. 474 00:27:43,510 --> 00:27:46,920 Kështu që këtu kjo është e njëjtë gjë si duke bërë të kthimit x. 475 00:27:46,920 --> 00:27:49,450 476 00:27:49,450 --> 00:27:50,540 >> Dhe vetëm për të treguar ju. 477 00:27:50,540 --> 00:27:54,000 478 00:27:54,000 --> 00:27:57,052 Dhe pastaj, ajo do të punojë vetëm si kjo. 479 00:27:57,052 --> 00:27:58,260 Pra më lejoni të vazhdoj me këtë. 480 00:27:58,260 --> 00:28:00,630 >> Pra tjetër nëse. 481 00:28:00,630 --> 00:28:04,060 Dhe me të vërtetë, unë mund të kthehen ndonjë gjë unë do të doja. 482 00:28:04,060 --> 00:28:06,680 Kështu që unë as nuk duhet të kthimit Booleans gjithë kohës, 483 00:28:06,680 --> 00:28:08,410 Unë vetëm mund të kthehen diçka tjetër. 484 00:28:08,410 --> 00:28:10,670 Kështu që unë mund të bëjë arush kthimit. 485 00:28:10,670 --> 00:28:12,989 >> Pra, në qoftë se x është e barabartë e barabartë me një, ajo do të kthehet arush. 486 00:28:12,989 --> 00:28:14,530 Përndryshe, ajo do të kthehet TRUE. 487 00:28:14,530 --> 00:28:19,310 Unë gjithashtu mund të bëjë një vektor apo me të vërtetë ndonjë gjë. 488 00:28:19,310 --> 00:28:22,210 >> Dhe normalisht në statically Gjuhë të shtypur, 489 00:28:22,210 --> 00:28:23,840 ju do të duhet të specifikoni një lloj këtu. 490 00:28:23,840 --> 00:28:25,750 Dhe vini re se kjo mund të jetë vetëm ndonjë gjë. 491 00:28:25,750 --> 00:28:32,400 Dhe R është mjaft inteligjent se ajo do të bëjë vetëm kjo dhe kjo do të punojnë mirë. 492 00:28:32,400 --> 00:28:33,620 >> Pra më lejoni të përcaktojë këtë. 493 00:28:33,620 --> 00:28:39,460 494 00:28:39,460 --> 00:28:41,230 Unexpected-- oh sorry. 495 00:28:41,230 --> 00:28:44,336 Ajo duhet të jetë një mbajtëse kaçurrel këtu. 496 00:28:44,336 --> 00:28:44,836 OK. 497 00:28:44,836 --> 00:28:45,336 Ftohtë. 498 00:28:45,336 --> 00:28:52,580 499 00:28:52,580 --> 00:28:54,530 Dakord. 500 00:28:54,530 --> 00:28:58,250 Pra, tani le të krahasojmë 3 dhe një është e barabartë me 3. 501 00:28:58,250 --> 00:29:01,860 Pra, ajo duhet të return-- yeah-- ariun vlerë. 502 00:29:01,860 --> 00:29:06,740 >> Deri tani një gjë më e përgjithshme është si ajo që për strukturat e tjera të të dhënave. 503 00:29:06,740 --> 00:29:09,110 Pra, ju e keni këtë funksion. 504 00:29:09,110 --> 00:29:15,360 Kjo do të punojë në çdo lloj e vlerës si 3 ose ndonjë numerike, 505 00:29:15,360 --> 00:29:17,500 me fjalë të tjera, të dyfishtë. 506 00:29:17,500 --> 00:29:19,330 >> Por ajo që për diçka si një vektor. 507 00:29:19,330 --> 00:29:27,750 Pra, çfarë ndodh në qoftë se ju do-- kështu që unë jam do të caktojë val të, të themi, 4 deri 6. 508 00:29:27,750 --> 00:29:31,640 Pra, nëse unë kthehem kësaj, kjo është një vektor nga 4, 5, 6. 509 00:29:31,640 --> 00:29:34,935 >> Tani le të shohim se çfarë ndodh në qoftë se unë bëj bounded.compare val. 510 00:29:34,935 --> 00:29:37,680 511 00:29:37,680 --> 00:29:42,450 Pra, kjo do të ju jap 15 1251. 512 00:29:42,450 --> 00:29:46,440 Pra, me fjalë të tjera, ajo është duke thënë në qoftë se ju shikoni në këtë gjendje 513 00:29:46,440 --> 00:29:50,040 kështu që ajo thotë se x është më pak se një apo diçka. 514 00:29:50,040 --> 00:29:51,880 Pra, kjo është pak konfuze sepse tani 515 00:29:51,880 --> 00:29:53,379 ju thjesht nuk e di se çfarë po ndodh. 516 00:29:53,379 --> 00:29:58,690 Kështu që unë mendoj një gjë që është e vërtetë mirë në lidhje vetëm duke u përpjekur për të korrigjoj 517 00:29:58,690 --> 00:30:04,600 është se ju mund të bëni vetëm val është më i madh se një dhe të shohim se çfarë ndodh atje. 518 00:30:04,600 --> 00:30:09,720 >> Pra val-- një është nga default 5 më shumë le të vetëm e Val më i madh se 5. 519 00:30:09,720 --> 00:30:14,280 Pra, kjo është një vektor FALSE FALSE TRUE. 520 00:30:14,280 --> 00:30:17,206 Pra, tani, kur ju jeni duke kërkuar në kjo, ajo do të them nëse, 521 00:30:17,206 --> 00:30:20,080 dhe pastaj ajo do të ju jap këtë është një vektor i false false TRUE. 522 00:30:20,080 --> 00:30:23,450 >> Pra, kur ju të kalojë këtë në R, R nuk ka asnjë ide se çfarë jeni duke bërë. 523 00:30:23,450 --> 00:30:26,650 Për shkak se ajo pret një të vetme vlera, e cila është një Boolean, dhe tani 524 00:30:26,650 --> 00:30:29,420 ju jeni duke i dhënë asaj një vektor të Booleans. 525 00:30:29,420 --> 00:30:31,970 Pra nga default, R është vetëm do të thonë se çfarë dreq, 526 00:30:31,970 --> 00:30:35,440 Unë do të supozojmë se ju jeni do të marrë elementin e parë këtu. 527 00:30:35,440 --> 00:30:38,320 Kështu që unë jam duke shkuar për të say-- unë jam duke shkuar të supozohet se kjo është FALSE. 528 00:30:38,320 --> 00:30:40,890 Pra, kjo do të thotë jo, kjo nuk është e drejtë. 529 00:30:40,890 --> 00:30:45,246 >> Në mënyrë të ngjashme, ajo do të të jetë e barabartë me val e barabartë me një. 530 00:30:45,246 --> 00:30:47,244 Jo, sorry 5. 531 00:30:47,244 --> 00:30:48,910 Dhe ajo gjithashtu do të jetë i rremë si. 532 00:30:48,910 --> 00:30:52,410 Kështu ajo do të thonë se nuk ka, kjo nuk është TRUE si edhe kështu që është e 533 00:30:52,410 --> 00:30:53,680 do të kthehen këtë të fundit. 534 00:30:53,680 --> 00:30:56,420 535 00:30:56,420 --> 00:31:01,360 >> Pra, kjo është ose një gjë e mirë apo një të keqe gjë, në varësi se si ju shikoni atë. 536 00:31:01,360 --> 00:31:05,104 Sepse kur ju jeni krijimin e këtyre funksioneve, 537 00:31:05,104 --> 00:31:06,770 ju nuk mund të vërtetë e di se çfarë po ndodh. 538 00:31:06,770 --> 00:31:10,210 Pra, ndonjëherë ju do të duan një gabim, ose ndoshta ju thjesht duan një paralajmërim. 539 00:31:10,210 --> 00:31:12,160 Në këtë rast, R nuk e bën atë. 540 00:31:12,160 --> 00:31:14,300 Kështu që është e vërtetë deri në ju bazuar jashtë e çfarë 541 00:31:14,300 --> 00:31:17,310 ju mendoni gjuhën duhet të bëjë në këtë rast 542 00:31:17,310 --> 00:31:22,920 në qoftë se ju të kalojë në një vektor të Booleans kur ju jeni duke bërë një nëse kusht. 543 00:31:22,920 --> 00:31:31,733 >> Pra, le të thonë se ju kishte origjinale një me nëse tjetër kthehen TRUE dhe ju jeni 544 00:31:31,733 --> 00:31:34,190 do të kthehen FALSE. 545 00:31:34,190 --> 00:31:39,300 Pra, një mënyrë për të abstraguar kjo do të thotë unë 546 00:31:39,300 --> 00:31:41,530 as nuk duhet kjo gjë të kushtëzuar. 547 00:31:41,530 --> 00:31:47,220 Një tjetër gjë që unë mund të bëj është vetëm të kthehej vetë vlerat. 548 00:31:47,220 --> 00:31:53,240 Pra, në qoftë se ju të vini re, në qoftë se ju bëjë val është më i madh se 5, 549 00:31:53,240 --> 00:31:56,350 kjo do të kthehen një vektor FALSE FALSE TRUE. 550 00:31:56,350 --> 00:31:58,850 >> Ndoshta kjo është ajo që ju dua për bounded.compare. 551 00:31:58,850 --> 00:32:02,940 Ju dëshironi që të kthejë një vektor të Booleans ku ajo krahason secili i vlerave 552 00:32:02,940 --> 00:32:04,190 për veten e tyre. 553 00:32:04,190 --> 00:32:11,165 Pra, ju vetëm mund të bëni bounded.compare funksion x, a është e barabartë me 5. 554 00:32:11,165 --> 00:32:13,322 555 00:32:13,322 --> 00:32:15,363 Dhe pastaj në vend të bërë kjo nëse kusht tjetër, 556 00:32:15,363 --> 00:32:21,430 Unë jam vetëm do të kthehen x është më i madh se 5. 557 00:32:21,430 --> 00:32:23,620 Pra, në qoftë se është e vërtetë, atëherë ajo do të kthehet TRUE. 558 00:32:23,620 --> 00:32:26,830 Dhe pastaj në qoftë se kjo nuk është, është e do të kthehen FALSE. 559 00:32:26,830 --> 00:32:30,880 >> Dhe kjo do të punojë për ndonjë nga këto struktura. 560 00:32:30,880 --> 00:32:41,450 Kështu që unë mund të bounded.compare c 1 6 ose 9 dhe atëherë unë jam duke shkuar për të thonë se një është e barabartë me 6, 561 00:32:41,450 --> 00:32:42,799 për shembull. 562 00:32:42,799 --> 00:32:44,840 Dhe atëherë ajo do të ju jap Boolean e duhur 563 00:32:44,840 --> 00:32:48,240 vektor që ju jeni dizajnimin. 564 00:32:48,240 --> 00:32:50,660 >> Pra, ata janë vetëm funksione dhe tani le të më vetëm 565 00:32:50,660 --> 00:32:54,980 ju tregojmë disa visuals interaktive. 566 00:32:54,980 --> 00:32:59,700 Unë nuk mendoj se unë në fakt kanë Wi-Fi këtu aq më lejoni vetëm të shkojnë përpara 567 00:32:59,700 --> 00:33:01,970 dhe kaloni këtë një të tillë unë mend. 568 00:33:01,970 --> 00:33:05,260 >> Por një gjë që është e ftohtë edhe pse është se në qoftë se ju vetëm 569 00:33:05,260 --> 00:33:09,600 duan për të provuar një bandë e Komandat e ndryshme të të dhënave, 570 00:33:09,600 --> 00:33:13,320 ka një bandë të dhënash të ndryshme që janë preloaded tashmë në R. 571 00:33:13,320 --> 00:33:15,770 Pra, një prej tyre është i quajtur iris dataset. 572 00:33:15,770 --> 00:33:18,910 Kjo është një nga më të mirë-njohur ato në të mësuarit e makinës. 573 00:33:18,910 --> 00:33:23,350 Ju zakonisht do të vetëm të bëjë një lloj të Rastet e testit të parë nëse kodi juaj shkon. 574 00:33:23,350 --> 00:33:27,520 Pra, le të vetëm shikoni çfarë iris është. 575 00:33:27,520 --> 00:33:33,130 >> Pra, kjo gjë është duke shkuar të jetë një kornizë të dhënave. 576 00:33:33,130 --> 00:33:36,000 Dhe kjo është lloj i gjatë, sepse Unë vetëm të shtypura jashtë iris. 577 00:33:36,000 --> 00:33:38,810 Është shtypjen nga të gjithë gjë. 578 00:33:38,810 --> 00:33:42,830 Pra, ajo i ka të gjitha këto emra të ndryshëm. 579 00:33:42,830 --> 00:33:45,505 Pra iris është një koleksion lule të ndryshme. 580 00:33:45,505 --> 00:33:48,830 Në këtë rast, Është e thënë ju speciet e tij, 581 00:33:48,830 --> 00:33:54,760 të gjitha këto widths të ndryshme dhe gjatesite e Nëpetël dhe petal. 582 00:33:54,760 --> 00:33:58,880 >> Dhe kështu normalisht, nëse ju doni të shtypura iris, 583 00:33:58,880 --> 00:34:03,680 për shembull, ju nuk doni të keni atë të gjitha këto se që mund të marrë përsipër 584 00:34:03,680 --> 00:34:05,190 juaj i tërë console. 585 00:34:05,190 --> 00:34:09,280 Pra, një gjë që me të vërtetë i mirë është funksioni kokë. 586 00:34:09,280 --> 00:34:12,929 Pra, në qoftë se ju vetëm bëni kokën iris, kjo do të ju jap 587 00:34:12,929 --> 00:34:17,389 pesë rreshta e para, apo gjashtë I guess. 588 00:34:17,389 --> 00:34:19,909 Dhe pastaj mirë, ju mund vetëm të specifikojë këtu. 589 00:34:19,909 --> 00:34:22,914 Pra 20-- kjo do t'i japë ju 20 rreshtat e para. 590 00:34:22,914 --> 00:34:24,830 Dhe unë në të vërtetë ishte i sjellshëm habitur nga që ky 591 00:34:24,830 --> 00:34:28,770 dha mua gjashtë aq më lejoni të shkoj përpara dhe kontrolloni iris-- ose kokën, sorry. 592 00:34:28,770 --> 00:34:31,699 593 00:34:31,699 --> 00:34:34,960 Dhe këtu ai do t'i japë ju dokumentacioni 594 00:34:34,960 --> 00:34:37,960 e çfarë bën kreu vlera. 595 00:34:37,960 --> 00:34:40,839 Pra, ajo kthehet e parë apo e fundit e një objekti. 596 00:34:40,839 --> 00:34:42,630 Dhe atëherë unë jam duke shkuar për të shikoni në standarte. 597 00:34:42,630 --> 00:34:47,340 Dhe atëherë ajo thotë parazgjedhje kreu metodë x dhe n është e barabartë 6L. 598 00:34:47,340 --> 00:34:50,620 Pra, kjo kthen gjashtë elementet e para. 599 00:34:50,620 --> 00:34:55,050 Dhe në mënyrë të ngjashme në qoftë se ju të vini re këtu, unë nuk duhet të specifikojë n është e barabartë me 6. 600 00:34:55,050 --> 00:34:56,840 By default ajo përdor gjashtë, I guess. 601 00:34:56,840 --> 00:35:00,130 Dhe pastaj, në qoftë se unë dua të specifikojë një të caktuar vlera, atëherë unë mund të shikoni se si. 602 00:35:00,130 --> 00:35:02,970 603 00:35:02,970 --> 00:35:10,592 >> Kështu që është disa komanda të thjeshta dhe këtu është një tjetër që është just-- mirë, 604 00:35:10,592 --> 00:35:12,550 Unë can-- kjo është në të vërtetë një kompleks pak më shumë, 605 00:35:12,550 --> 00:35:17,130 por kjo vetëm do të marrë klasën e çdo kolonë e CCD iris. 606 00:35:17,130 --> 00:35:20,910 Pra, kjo do të ju tregojnë se çfarë secili prej tyre kolona janë në aspektin e llojeve të tyre. 607 00:35:20,910 --> 00:35:23,665 Pra gjatësi sepal është numerike, width sepal është numerike. 608 00:35:23,665 --> 00:35:26,540 Të gjitha këto vlera janë vetëm numerike sepse ju mund të thoni nga këto të dhëna 609 00:35:26,540 --> 00:35:29,440 strukturojë këto janë të gjithë do të numerik. 610 00:35:29,440 --> 00:35:34,310 >> Dhe kolona Speciet do të jetë një faktor. 611 00:35:34,310 --> 00:35:37,270 Pra normalisht, ju do të mendojnë se kjo është si një varg karakter. 612 00:35:37,270 --> 00:35:48,830 Por nëse ju vetëm bëni irisSpecies, dhe atëherë unë jam duke shkuar për të bërë kokën 5, 613 00:35:48,830 --> 00:35:51,820 dhe kjo është duke shkuar për të shtypur nga pesë vlerat e para. 614 00:35:51,820 --> 00:35:54,150 >> Dhe pastaj të vini re këtë nivelet. 615 00:35:54,150 --> 00:35:58,870 Pra, kjo është saying-- kjo është mënyra më e r-së të paturit e variablave kategorike. 616 00:35:58,870 --> 00:36:03,765 Pra, në vend të vetëm duke pasur strings karakter, 617 00:36:03,765 --> 00:36:06,740 ajo ka nivele specifikon cila nga këto gjëra janë. 618 00:36:06,740 --> 00:36:12,450 >> Pra, le të themi irisSpecies 1. 619 00:36:12,450 --> 00:36:17,690 Pra, çfarë ju doni të bëni këtu është unë jam subsetting në këtë kolonë Speciet. 620 00:36:17,690 --> 00:36:21,480 Pra, kjo merr Kolona Speciet dhe pastaj 621 00:36:21,480 --> 00:36:23,820 Indekset ajo për të marrë elementin e parë. 622 00:36:23,820 --> 00:36:27,140 Pra kjo duhet të ju jap setosa. 623 00:36:27,140 --> 00:36:28,710 Dhe ajo gjithashtu ju jep nivele këtu. 624 00:36:28,710 --> 00:36:32,812 >> Kështu që ju mund të krahasoni kjo me setosa karakter 625 00:36:32,812 --> 00:36:34,645 dhe kjo nuk është duke shkuar të jetë TRUE sepse një 626 00:36:34,645 --> 00:36:37,940 është e një lloji të ndryshëm nga tjetri. 627 00:36:37,940 --> 00:36:40,590 Ose unë mendoj se është e vërtetë, sepse R është më inteligjente se kaq. 628 00:36:40,590 --> 00:36:45,420 Dhe kjo duket në këtë dhe pastaj thotë se, ndoshta kjo është ajo që ju dëshironi. 629 00:36:45,420 --> 00:36:51,860 Pra, kjo do të them karakterin string setosa është e njëjtë si ky. 630 00:36:51,860 --> 00:37:01,290 Dhe pastaj në mënyrë të ngjashme, ju mund të gjithashtu kap vetëm këto si kështu me radhë. 631 00:37:01,290 --> 00:37:05,580 >> Pra, kjo është vetëm një lloj Komandat e shpejtë e CCD. 632 00:37:05,580 --> 00:37:08,030 Kështu që këtu është disa eksplorim të dhënave. 633 00:37:08,030 --> 00:37:11,360 Pra, kjo është pak më shumë përfshirë me analizën e të dhënave. 634 00:37:11,360 --> 00:37:18,340 Dhe kjo është marrë nga disa bootcamp në R për në Berkeley. 635 00:37:18,340 --> 00:37:20,790 >> Pra bibliotekë huaj. 636 00:37:20,790 --> 00:37:24,880 Kështu që unë jam duke shkuar për të ngarkuar në një bibliotekë që quhet i huaj. 637 00:37:24,880 --> 00:37:32,460 Pra, kjo do të më jepni read.dta kështu që të supozojmë se unë kam këtë dataset. 638 00:37:32,460 --> 00:37:39,000 Kjo është e ruajtur në tanishme Lista e tim tastierë pune. 639 00:37:39,000 --> 00:37:42,190 Pra, le të vetëm të shohim se çfarë Lista pune është. 640 00:37:42,190 --> 00:37:44,620 >> Kështu që këtu është drejtori im i punës. 641 00:37:44,620 --> 00:37:50,040 Dhe lexoj dot të dhëna, këtë gjë, është duke thënë këtë fotografi 642 00:37:50,040 --> 00:37:54,650 është e vendosur në dosjen e të dhënave të kjo drejtori aktual të punës. 643 00:37:54,650 --> 00:38:00,520 Dhe read.dta kjo nuk është e një komandë default. 644 00:38:00,520 --> 00:38:02,760 I guess I ngarkuar atë në tashmë. 645 00:38:02,760 --> 00:38:04,750 IEI supozuar I ngarkuar këtë në tashmë. 646 00:38:04,750 --> 00:38:08,115 >> Por kështu read.dta nuk është duke shkuar të jetë një komandë default. 647 00:38:08,115 --> 00:38:11,550 Dhe kjo është arsyeja pse ju jeni do të ketë për të ngarkuar në këtë bibliotekë package-- 648 00:38:11,550 --> 00:38:14,500 kjo paketë të quajtur huaj. 649 00:38:14,500 --> 00:38:16,690 Dhe në qoftë se ju nuk keni paketë, unë mendoj 650 00:38:16,690 --> 00:38:19,180 i huaj është një nga ato më të ndërtuar në. 651 00:38:19,180 --> 00:38:31,150 Përndryshe, ju gjithashtu mund të bëni install.packages 652 00:38:31,150 --> 00:38:33,180 dhe kjo do të instaloni paketën. 653 00:38:33,180 --> 00:38:36,878 Dhe kjo do të ju jap R. uh, nr. 654 00:38:36,878 --> 00:38:39,830 655 00:38:39,830 --> 00:38:43,140 Dhe atëherë unë jam vetëm do të ndalet kjo sepse unë tashmë e kanë atë. 656 00:38:43,140 --> 00:38:46,920 >> Por ajo që është me të vërtetë e bukur për R është se menaxhimin paketë 657 00:38:46,920 --> 00:38:48,510 Sistemi është shumë elegant. 658 00:38:48,510 --> 00:38:52,470 Për shkak se ajo do të ruajë gjithçka të vërtetë e bukur për ju. 659 00:38:52,470 --> 00:38:59,780 Pra në këtë rast, ajo do të ruajë ajo në, unë besoj, kjo bibliotekë këtu. 660 00:38:59,780 --> 00:39:02,390 >> Pra, në çdo kohë që ju dëshironi të instaloni pako të reja, 661 00:39:02,390 --> 00:39:04,980 kjo është po aq e thjeshtë sa duke bërë install.packages 662 00:39:04,980 --> 00:39:07,500 dhe R do të menaxhojë të gjithë paketa për ju. 663 00:39:07,500 --> 00:39:12,900 Pra, ju nuk keni për të bërë diçka në Python, ku ju keni paketë të jashtëm 664 00:39:12,900 --> 00:39:15,330 Menaxherët si letër Anaconda ku ju jeni 665 00:39:15,330 --> 00:39:18,310 doing-- ju instaloni paketa jashtë Python 666 00:39:18,310 --> 00:39:20,940 dhe pastaj ju të përpiqen për të drejtuar vetë. 667 00:39:20,940 --> 00:39:22,210 Pra, kjo është me të vërtetë mënyra më e mirë. 668 00:39:22,210 --> 00:39:25,590 >> Dhe install.packages kërkon internet. 669 00:39:25,590 --> 00:39:31,950 Ajo merr atë nga një server dhe depo që 670 00:39:31,950 --> 00:39:33,960 mbledh të gjithë paketa quhet cran. 671 00:39:33,960 --> 00:39:40,690 Dhe ju mund të specifikoni se cili lloj pasqyre ju doni të shkarkoni paketat nga. 672 00:39:40,690 --> 00:39:43,420 >> Kështu që këtu unë jam marrë këtë dataset. 673 00:39:43,420 --> 00:39:46,240 Unë jam duke e lexuar atë në duke përdorur këtë funksion. 674 00:39:46,240 --> 00:39:49,360 Pra më lejoni të shkoj përpara dhe të bëjë këtë. 675 00:39:49,360 --> 00:39:52,900 >> Pra, le të supozojmë se ju e keni këtë dataset 676 00:39:52,900 --> 00:39:55,550 dhe ju keni absolutisht asnjë ide se çfarë është. 677 00:39:55,550 --> 00:39:58,560 Dhe kjo në të vërtetë vjen deri mjaft shpesh në industrinë e 678 00:39:58,560 --> 00:40:00,910 ku ju vetëm duhet këto ton dhe ton e gjëra të çrregullt 679 00:40:00,910 --> 00:40:02,890 dhe ata janë tepër të unlabeled. 680 00:40:02,890 --> 00:40:06,380 Kështu që këtu unë kam këtë dataset dhe unë nuk e di 681 00:40:06,380 --> 00:40:08,400 çfarë është kështu që unë jam vetëm duke treguar për të kontrolluar atë. 682 00:40:08,400 --> 00:40:10,620 >> Kështu që unë jam duke shkuar për të bërë kreu i parë. 683 00:40:10,620 --> 00:40:14,190 Kështu që unë kontrolloni gjashtë e parë kolona të asaj që kjo dataset është. 684 00:40:14,190 --> 00:40:21,730 Pra, kjo është shtet, pres04, dhe pastaj të gjitha këto lloj i ndryshëm i kolonave. 685 00:40:21,730 --> 00:40:25,612 Dhe çfarë është interesante këtu, unë mendoj, është se ju 686 00:40:25,612 --> 00:40:27,945 do të supozojmë se kjo duket si një lloj të zgjedhjeve. 687 00:40:27,945 --> 00:40:30,482 688 00:40:30,482 --> 00:40:32,190 Dhe unë mendoj vetëm nga duke kërkuar në dosjen e 689 00:40:32,190 --> 00:40:41,070 emrin kjo është një lloj koleksioni e të dhënave për kandidatët ose votuesve 690 00:40:41,070 --> 00:40:44,920 që votuan për kryetarët specifike ose kandidatë Presidenti 691 00:40:44,920 --> 00:40:46,550 për zgjedhjet e 2004. 692 00:40:46,550 --> 00:40:52,920 >> Kështu që këtu është vlera 1, 2 kështu një mënyrë e ruajtjes 693 00:40:52,920 --> 00:40:56,540 kandidatët Presidenti janë emrat e tyre. 694 00:40:56,540 --> 00:40:59,780 Në këtë rast, ajo duket si ata janë vlerat vetëm numer i plote. 695 00:40:59,780 --> 00:41:04,030 Pra 2004, ajo ishte e Bush kundrejt Kerry unë besoj. 696 00:41:04,030 --> 00:41:09,010 Dhe tani, le të thonë se ju thjesht nuk e di nëse 1 korrespondon Bush apo 2 697 00:41:09,010 --> 00:41:11,703 korrespondon Kerry apo dhe kështu me radhë e kështu me radhë, e drejtë? 698 00:41:11,703 --> 00:41:15,860 >> Dhe kjo është, vetëm për mua, një problem mjaft i zakonshëm. 699 00:41:15,860 --> 00:41:18,230 Pra, çfarë mund të bëni në këtë rast? 700 00:41:18,230 --> 00:41:20,000 Pra, le të kontrollosh të gjitha këto gjëra të tjera. 701 00:41:20,000 --> 00:41:22,790 >> shtet, unë jam duke supozuar kjo vjen nga shtete të ndryshme. 702 00:41:22,790 --> 00:41:25,100 partyid, të ardhura. 703 00:41:25,100 --> 00:41:27,710 Le të shikojmë në partyid. 704 00:41:27,710 --> 00:41:32,800 Pra, ndoshta një gjë që ju mund të bëni është shikoni në secilin prej vëzhgimeve 705 00:41:32,800 --> 00:41:36,250 që kanë një partyid të Republikan apo demokrat apo diçka. 706 00:41:36,250 --> 00:41:38,170 Pra, le të vetëm të shikojmë se çfarë partyid është. 707 00:41:38,170 --> 00:41:41,946 >> Kështu që unë jam duke shkuar për të marrë dat dhe pastaj unë jam duke shkuar 708 00:41:41,946 --> 00:41:47,960 për të bërë këtë shenjë dollar operator që kam bërë më parë 709 00:41:47,960 --> 00:41:50,770 dhe kjo do të nëngrup për atë kolonë. 710 00:41:50,770 --> 00:41:57,760 Dhe atëherë unë jam duke shkuar për të kryesuar këtë në 20, vetëm për të parë se çfarë kjo duket si. 711 00:41:57,760 --> 00:42:00,170 >> Pra, kjo është vetëm një bandë e nas. 712 00:42:00,170 --> 00:42:02,800 Pra, me fjalë të tjera, ju keni mungojnë të dhënat për këto guys. 713 00:42:02,800 --> 00:42:08,100 Por edhe ju këtë njoftim dat partyid është një faktor 714 00:42:08,100 --> 00:42:10,030 kështu që kjo ju jep kategori të ndryshme. 715 00:42:10,030 --> 00:42:14,170 Pra, me fjalë të tjera, partyid mund të marrë Demokrat, republikan, Pavarur, 716 00:42:14,170 --> 00:42:16,640 apo diçka tjetër. 717 00:42:16,640 --> 00:42:23,940 >> Pra, le të shkojnë përpara dhe le të shikoni se cilat nga këto is-- oh, OK. 718 00:42:23,940 --> 00:42:28,480 Kështu që unë jam duke shkuar për të nënbashkësi për partyid dhe pastaj 719 00:42:28,480 --> 00:42:32,780 shikojmë që ato janë Demokrat, për shembull. 720 00:42:32,780 --> 00:42:37,150 Kjo do të ju jap një Boolean, një Boolean madh i TRUEs dhe FALSEs. 721 00:42:37,150 --> 00:42:41,630 >> Dhe tani, le të thonë se unë dua në mesin e këtyre guys. 722 00:42:41,630 --> 00:42:47,260 Pra, kjo do të marrë dat time dhe subset te cilado vëzhgime 723 00:42:47,260 --> 00:42:48,910 kanë të barabartëve partyid barabartë demokrat. 724 00:42:48,910 --> 00:42:52,830 725 00:42:52,830 --> 00:42:55,180 Dhe kjo është mjaft e gjatë, sepse nuk ka aq shumë prej tyre. 726 00:42:55,180 --> 00:42:59,060 Kështu që tani, unë jam duke shkuar për të kryesuar këtë në 20. 727 00:42:59,060 --> 00:43:05,690 728 00:43:05,690 --> 00:43:11,270 >> Dhe si ju të vini re, është e barabartë me të barabartëve është interesante në atë që ju jeni 729 00:43:11,270 --> 00:43:13,250 already-- ju jeni gjithashtu duke përfshirë NAS. 730 00:43:13,250 --> 00:43:19,010 Pra në këtë rast, ju ende mund të mos marrë ndonjë informacion sepse tani ju keni nas 731 00:43:19,010 --> 00:43:22,650 dhe ju vetëm duan të shohin se cili prej Vëzhgimi korrespondojnë me demokrat 732 00:43:22,650 --> 00:43:24,670 dhe jo këto mungojnë vlerat veten e tyre. 733 00:43:24,670 --> 00:43:27,680 Pra, si do të të shpëtoj nga këto nas? 734 00:43:27,680 --> 00:43:36,410 >> Kështu që këtu unë jam vetëm duke përdorur çelësin deri në tim kursorin dhe pastaj duke thënë lëvizin përreth. 735 00:43:36,410 --> 00:43:39,778 Dhe pastaj këtu unë jam vetëm duke shkuar për të thënë is.na datpartyid. 736 00:43:39,778 --> 00:43:48,970 737 00:43:48,970 --> 00:43:52,720 Pra, kjo dhe dhe do të marrë dy vektorët ndryshme Boolean 738 00:43:52,720 --> 00:43:57,160 dhe thonë se kjo do të jetë TRUE dhe FALSE për shembull. 739 00:43:57,160 --> 00:43:59,190 Kështu ajo do të bëjë këtë komponent-mençur. 740 00:43:59,190 --> 00:44:02,910 Kështu që këtu unë jam duke thënë reagim i kornizë të dhënave, nënbashkësi 741 00:44:02,910 --> 00:44:10,170 të atyre që korrespondojnë me demokrat, dhe për të hequr ndonjë prej tyre që nuk janë NA. 742 00:44:10,170 --> 00:44:13,540 >> Pra, kjo will-- duhet ju jap diçka. 743 00:44:13,540 --> 00:44:16,540 744 00:44:16,540 --> 00:44:17,600 Le të shohim is.na. 745 00:44:17,600 --> 00:44:24,670 746 00:44:24,670 --> 00:44:27,690 Le të përpiqemi datpartyid is.na. 747 00:44:27,690 --> 00:44:36,290 748 00:44:36,290 --> 00:44:45,290 Dhe kjo duhet të jap you-- sorry-- vetëm një vektor Boolean. 749 00:44:45,290 --> 00:44:49,260 Dhe pastaj, për shkak se është aq e gjatë, Unë jam duke shkuar për mesin e të 20. 750 00:44:49,260 --> 00:44:49,760 OK. 751 00:44:49,760 --> 00:44:51,570 Pra kjo duhet të punojnë. 752 00:44:51,570 --> 00:44:54,700 >> Dhe kjo do të jetë gjithashtu TRUEs. 753 00:44:54,700 --> 00:45:01,830 Ah, kështu që gabimi im këtu është se I'm-- unë përdorin C ++ dhe R interchangeably kështu që unë bëj 754 00:45:01,830 --> 00:45:03,590 ky gabim gjithë kohës. 755 00:45:03,590 --> 00:45:05,807 Dhe operatori është në të vërtetë ajo që dëshironi. 756 00:45:05,807 --> 00:45:08,140 Ju nuk dëshironi të përdorni dy ampersands, vetëm një njeri i vetëm. 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 >> Pra, le të shohim. 760 00:45:18,140 --> 00:45:20,930 761 00:45:20,930 --> 00:45:23,920 Pra, ne subsetted të partyid ku ata janë demokrat 762 00:45:23,920 --> 00:45:25,300 dhe ata nuk jeni të humbur vlerat. 763 00:45:25,300 --> 00:45:27,690 Dhe tani le të shohim në që ato kanë votuar për. 764 00:45:27,690 --> 00:45:31,530 Kështu ajo duket si më prej tyre votuan për 1. 765 00:45:31,530 --> 00:45:36,090 Kështu që unë jam duke shkuar për të shkuar përpara dhe thonë se është e Kerry. 766 00:45:36,090 --> 00:45:39,507 >> Dhe në mënyrë të ngjashme, ju mund të gjithashtu të shkojnë në republikan 767 00:45:39,507 --> 00:45:41,090 dhe shpresojmë se, kjo duhet të ju jap 2. 768 00:45:41,090 --> 00:45:49,730 769 00:45:49,730 --> 00:45:51,770 Është vetëm një bandë e kolona të ndryshme. 770 00:45:51,770 --> 00:45:53,070 Dhe me të vërtetë, është e 2. 771 00:45:53,070 --> 00:45:55,750 Pra partyid gjitha republikan, shumica e tyre po votojnë për 2. 772 00:45:55,750 --> 00:45:58,390 >> Pra, duket sikur, vetëm duke shikuar në këtë, 773 00:45:58,390 --> 00:46:00,600 Republikan do të jetë a very-- ose partyid 774 00:46:00,600 --> 00:46:02,790 do të jetë një shumë e faktor i madh në përcaktimin 775 00:46:02,790 --> 00:46:05,420 cili kandidat ata janë do të votojnë për të. 776 00:46:05,420 --> 00:46:07,120 Dhe kjo është padyshim e vërtetë në përgjithësi. 777 00:46:07,120 --> 00:46:10,139 Dhe kjo ndeshje tuaj intuitë, natyrisht. 778 00:46:10,139 --> 00:46:11,930 Pra duket sikur jam mbetur shumë kohë kështu 779 00:46:11,930 --> 00:46:17,040 më lejoni vetëm duhet të shkoni përpara dhe të tregojnë disa imazhe të shpejtë. 780 00:46:17,040 --> 00:46:21,120 Kështu që këtu është diçka që është pak më e komplikuar me vizualizimi. 781 00:46:21,120 --> 00:46:26,450 Pra në këtë rast, kjo është një shumë Analiza e thjeshtë e vetëm kontrolluar atë 782 00:46:26,450 --> 00:46:28,500 president i '04 është. 783 00:46:28,500 --> 00:46:33,920 >> Pra në këtë rast, le të thonë se ju të kërkuar për t'iu përgjigjur kësaj pyetjeje. 784 00:46:33,920 --> 00:46:38,540 Pra, mendoj që ne të kërkuar të dini votimin sjellje në zgjedhjet e 2004 presidentit 785 00:46:38,540 --> 00:46:41,170 dhe se si kjo ndryshon nga raca. 786 00:46:41,170 --> 00:46:44,380 Pra, jo vetëm që ju doni të shohin sjelljen e votimit, 787 00:46:44,380 --> 00:46:47,860 por ju doni të mesin e çdo garë dhe lloj të përmblidhni se. 788 00:46:47,860 --> 00:46:50,770 Dhe ju mund të them vetëm nga ky simbol kompleks 789 00:46:50,770 --> 00:46:52,580 që kjo është lloj i gjetjes mjegullt. 790 00:46:52,580 --> 00:46:56,390 >> Pra, një nga më të avancuar R paketa që është në gjithashtu lloj i fundit 791 00:46:56,390 --> 00:47:00,070 quhet dplyr. 792 00:47:00,070 --> 00:47:03,060 Pra, është kjo një e drejtë këtu. 793 00:47:03,060 --> 00:47:08,080 Dhe ggplot2 ggg-- është vetëm një e bukur mënyrë për të bërë visualizations më të mira 794 00:47:08,080 --> 00:47:09,400 sesa të ndërtuar në një. 795 00:47:09,400 --> 00:47:11,108 >> Kështu që unë jam duke shkuar për të ngarkuar këto dy biblioteka. 796 00:47:11,108 --> 00:47:13,200 797 00:47:13,200 --> 00:47:16,950 Dhe pastaj, unë jam duke shkuar për të shkuar përpara dhe të drejtuar këtë komandë. 798 00:47:16,950 --> 00:47:19,050 Ju mund të trajtojnë vetëm këtë si një kuti e zezë. 799 00:47:19,050 --> 00:47:23,460 >> Çfarë është duke ndodhur është se ky tub operator është duke kaluar në këtë argument 800 00:47:23,460 --> 00:47:24,110 në këtu. 801 00:47:24,110 --> 00:47:28,070 Kështu që unë jam duke thënë grup nga dat garë dhe pastaj president 04. 802 00:47:28,070 --> 00:47:31,530 Dhe pastaj, të gjitha këto komanda të tjera janë filtrimin dhe pastaj përmbledhjen 803 00:47:31,530 --> 00:47:34,081 ku unë jam duke bërë numërimin dhe atëherë unë jam duke komplotuar atë këtu. 804 00:47:34,081 --> 00:47:39,980 805 00:47:39,980 --> 00:47:42,500 OK cool. 806 00:47:42,500 --> 00:47:44,620 Pra, le të shkojnë përpara dhe të shohim se çfarë kjo duket si. 807 00:47:44,620 --> 00:47:52,280 808 00:47:52,280 --> 00:47:57,290 >> Pra, çfarë po ndodh këtu është se unë vetëm komplotoi secili prej garave dhe pastaj 809 00:47:57,290 --> 00:47:59,670 që ato kanë votuar për. 810 00:47:59,670 --> 00:48:03,492 Dhe këta dy të ndryshme Vlerat korrespondojnë me 2 dhe 1. 811 00:48:03,492 --> 00:48:05,325 Nëse duan të jenë më të elegant, ju gjithashtu mund të 812 00:48:05,325 --> 00:48:11,770 vetëm të specifikojë se 2 është Kerry-- ose 2 është Bush, dhe pastaj 1 është Kerry. 813 00:48:11,770 --> 00:48:13,700 Dhe ju mund të ketë gjithashtu që në legjendë tuaj. 814 00:48:13,700 --> 00:48:17,410 >> Dhe ju gjithashtu mund të ndahen këto grafikët bar. 815 00:48:17,410 --> 00:48:19,480 Sepse një gjë është e që, në qoftë se ju të vini re, 816 00:48:19,480 --> 00:48:24,560 kjo nuk është shumë e lehtë për të identifikuar cila prej këtyre dy vlerave janë më të mëdha. 817 00:48:24,560 --> 00:48:27,920 Pra, një gjë që ju do të duan të bëni është të marrë këtë zonë blu 818 00:48:27,920 --> 00:48:31,855 dhe vetëm lëvizin atë mbi këtu kështu që ju mund të krahasohen këto dy krah për krah. 819 00:48:31,855 --> 00:48:34,480 Dhe unë mendoj se kjo është diçka që unë nuk kanë kohë për të bërë të drejtë tani, 820 00:48:34,480 --> 00:48:36,660 por kjo është gjithashtu shumë e lehtë për të bërë. 821 00:48:36,660 --> 00:48:40,310 Ju vetëm mund të shikoni në faqet njeriu e ggplot. 822 00:48:40,310 --> 00:48:47,170 Pra, ju vetëm mund të bëni ggplot si se dhe të lexoni në këtë faqe njeri. 823 00:48:47,170 --> 00:48:51,920 >> Pra më lejoni vetëm të shpejt ju tregojmë disa gjëra cool. 824 00:48:51,920 --> 00:48:57,610 Le të shkojnë përpara dhe të shkojnë to-- vetëm një Aplikimi i mësimit të makinës. 825 00:48:57,610 --> 00:49:02,450 Pra, le të thonë se ne kemi këto tre paketa kështu që unë jam duke shkuar për të ngarkuar këto në. 826 00:49:02,450 --> 00:49:05,500 827 00:49:05,500 --> 00:49:09,170 Pra, kjo vetëm printon nga disa Informacioni pasi kam ngarkuar në gjë. 828 00:49:09,170 --> 00:49:15,220 Kështu që unë jam duke thënë këtë read.csv, kjo dataset, dhe tani 829 00:49:15,220 --> 00:49:18,940 Unë do të shkoj përpara dhe të kërkoni dhe parë se çfarë ka brenda këtij CCD. 830 00:49:18,940 --> 00:49:22,080 >> Pra 20 vëzhgimet e para. 831 00:49:22,080 --> 00:49:27,190 Kështu që unë vetëm duhet X1, X2, dhe Y. Pra ajo duket si një bandë e këtyre vlerave 832 00:49:27,190 --> 00:49:31,640 janë duke filluar nga ndoshta 20-80 apo më shumë. 833 00:49:31,640 --> 00:49:37,700 Dhe pastaj në mënyrë të ngjashme për X2 dhe pastaj kjo Y duket të jetë etiketat 0 dhe 1. 834 00:49:37,700 --> 00:49:49,500 >> Për të verifikuar këtë, unë mund vetëm të bëjë dhënave përmbledhje X1. 835 00:49:49,500 --> 00:49:51,660 Dhe pastaj në mënyrë të ngjashme për të gjitha këto kolona të tjera. 836 00:49:51,660 --> 00:49:55,300 Pra përmbledhje është një mënyrë e shpejtë e vetëm duke ju shfaqur vlera të shpejtë. 837 00:49:55,300 --> 00:49:56,330 Oh, më vjen keq. 838 00:49:56,330 --> 00:49:58,440 Kjo duhet të jetë Y. 839 00:49:58,440 --> 00:50:03,420 >> Pra në këtë rast, i jep quantiles, medians, maxes si. 840 00:50:03,420 --> 00:50:07,130 Në këtë rast, dataY, ju mund të shihni se ajo është vetëm do të jetë 0 dhe 1. 841 00:50:07,130 --> 00:50:10,100 Gjithashtu do të thotë është duke thënë 0,6, thjesht do të thotë se ajo 842 00:50:10,100 --> 00:50:13,380 Duket si unë kanë më shumë 1s se 0s. 843 00:50:13,380 --> 00:50:16,160 >> Pra më lejoni të shkoj përpara dhe të tregojnë ju çfarë kjo duket si. 844 00:50:16,160 --> 00:50:17,470 Kështu që unë jam vetëm duke shkuar për të komplotuar këtë. 845 00:50:17,470 --> 00:50:22,852 846 00:50:22,852 --> 00:50:24,636 Le të shohim se si të qartë këtë. 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 >> Pra, kjo është ajo që duket si. 852 00:50:37,590 --> 00:50:46,310 Pra, kjo duket si yellows unë specifikuara si 0, dhe pastaj të kuqe unë specifikuar si 1s. 853 00:50:46,310 --> 00:50:52,190 Kështu që këtu ajo duket si Pikat etiketë dhe ajo 854 00:50:52,190 --> 00:50:56,410 duket sikur ju vetëm të kërkuar disa lloj i clustering mbi këtë. 855 00:50:56,410 --> 00:51:01,020 >> Dhe më lejoni vetëm të shkojnë përpara dhe të tregojnë ju disa nga këto funksione të tjera. 856 00:51:01,020 --> 00:51:03,580 Kështu që këtu është lm. 857 00:51:03,580 --> 00:51:06,060 Pra, kjo është vetëm duke u përpjekur për të përshtaten një linjë për këtë. 858 00:51:06,060 --> 00:51:08,640 Pra, çfarë është mënyra më e mirë që unë mund të përshtatet një linjë e tillë 859 00:51:08,640 --> 00:51:14,020 se ai do ta ndajë më të mirë ky lloj i clustering. 860 00:51:14,020 --> 00:51:21,790 Dhe në mënyrë ideale, ju vetëm mund të shihni që unë vetëm të drejtuar të gjitha këto komanda 861 00:51:21,790 --> 00:51:25,450 dhe pastaj, unë jam duke shkuar përpara dhe të shtoni linjë. 862 00:51:25,450 --> 00:51:28,970 >> Pra, kjo duket si mend mirë. 863 00:51:28,970 --> 00:51:34,150 Ajo është duke marrë një më të mirë që minimizon gabim në duke u përpjekur që të përshtaten këtë linjë. 864 00:51:34,150 --> 00:51:40,000 Natyrisht, kjo duket lloj i e mirë, por kjo nuk është më e mirë. 865 00:51:40,000 --> 00:51:43,130 Dhe modele lineare, në përgjithësi, do të jenë të 866 00:51:43,130 --> 00:51:46,811 të vërtetë të madhe për teorinë dhe vetëm lloj e ndërtimit të bazave të makinës 867 00:51:46,811 --> 00:51:47,310 të mësuarit. 868 00:51:47,310 --> 00:51:50,330 Por në praktikë, ju jeni do të duan të bëjnë diçka më të përgjithshme. 869 00:51:50,330 --> 00:51:54,280 >> Kështu që ju mund vetëm të provoni drejtimin diçka që quhet një rrjet nervor. 870 00:51:54,280 --> 00:51:57,110 Këto gjëra janë gjithnjë e më të zakonshme. 871 00:51:57,110 --> 00:52:00,530 Dhe ata vetëm punë fantastike për datasets të mëdha. 872 00:52:00,530 --> 00:52:07,080 Pra në këtë rast, ne vetëm have-- le të see-- ne kemi nrow. 873 00:52:07,080 --> 00:52:09,010 Pra nrow është vetëm duke thënë numrin e rreshtave. 874 00:52:09,010 --> 00:52:11,790 Pra në këtë rast, unë kanë 100 vëzhgime. 875 00:52:11,790 --> 00:52:15,010 >> Pra më lejoni të shkoj përpara dhe të të bëjë një rrjet nervor. 876 00:52:15,010 --> 00:52:18,620 Pra, kjo është me të vërtetë e bukur sepse unë mund të them vetëm nnet 877 00:52:18,620 --> 00:52:21,767 dhe atëherë unë jam duke regressing shkronjes Y. Pra, Y është se kolona. 878 00:52:21,767 --> 00:52:23,850 Dhe pastaj hapa prapa atë në dy variabla të tjera. 879 00:52:23,850 --> 00:52:27,360 Pra, kjo është më e shkurtër simbol për X1 dhe X2. 880 00:52:27,360 --> 00:52:29,741 >> Pra, le të shkojnë përpara dhe të drejtuar këtë. 881 00:52:29,741 --> 00:52:30,240 Oh, më vjen keq. 882 00:52:30,240 --> 00:52:32,260 Unë kam nevojë për të drejtuar këtë gjë të tërë. 883 00:52:32,260 --> 00:52:37,500 Dhe kjo është vetëm simbol shtypje për sa shpejt apo jo shpejt ajo 884 00:52:37,500 --> 00:52:38,460 konverguar. 885 00:52:38,460 --> 00:52:41,420 Pra, duket si ajo ka konvergojnë. 886 00:52:41,420 --> 00:52:44,970 Pra më lejoni të shkoj përpara dhe të shtypura se çfarë kjo duket si. 887 00:52:44,970 --> 00:52:51,260 >> Shih këtu është fotografia dhe këtu është një kontur duke treguar se si edhe ai i përshtatet. 888 00:52:51,260 --> 00:52:56,380 Dhe kjo është just-- ju mund të shihni kjo se kjo është shumë, shumë e bukur. 889 00:52:56,380 --> 00:52:59,400 Ajo mund edhe të jetë overfitting, por ju gjithashtu mund të 890 00:52:59,400 --> 00:53:03,390 llogari për këtë me tjetrin Teknikat si ndër-validation. 891 00:53:03,390 --> 00:53:06,180 Dhe këto janë ndërtuar edhe në R. 892 00:53:06,180 --> 00:53:09,170 >> Dhe më lejoni vetëm të ju tregojnë mbështetur makinë vektor. 893 00:53:09,170 --> 00:53:12,470 Ky është një tjetër të vërtetë të përbashkët teknikë në të mësuarit e makinës. 894 00:53:12,470 --> 00:53:18,550 Ajo është shumë e ngjashme me modelet lineare, por ai përdor atë që quhet një metodë kernel. 895 00:53:18,550 --> 00:53:22,790 Dhe le të shohim se sa mirë që bën. 896 00:53:22,790 --> 00:53:26,430 Pra, kjo është shumë e ngjashme me mënyrën se si edhe një rrjet nervor kryen, 897 00:53:26,430 --> 00:53:27,900 por kjo është shumë më e duhur. 898 00:53:27,900 --> 00:53:35,740 Dhe kjo është e bazuar off i what-- se si SVMs punë. 899 00:53:35,740 --> 00:53:40,250 >> Pra, kjo është vetëm një shumë pasqyrë të shpejtë të disa 900 00:53:40,250 --> 00:53:43,822 i funksioneve të ndërtuara në ju mund të bëni dhe gjithashtu disa nga eksplorimit të dhënave. 901 00:53:43,822 --> 00:53:45,905 Pra më lejoni vetëm të shkojnë përpara dhe të kthehemi në slides. 902 00:53:45,905 --> 00:53:50,290 903 00:53:50,290 --> 00:53:53,670 >> Pra natyrisht, kjo është jo shumë të plotë. 904 00:53:53,670 --> 00:53:57,140 Dhe kjo është me të vërtetë vetëm një ngacmues ju tregon se çfarë ju mund të vërtetë të bëjë në R. 905 00:53:57,140 --> 00:53:59,100 Pra, në qoftë se ju do ashtu si për të mësuar më shumë, këtu 906 00:53:59,100 --> 00:54:01,210 janë një bandë e burimeve të ndryshme. 907 00:54:01,210 --> 00:54:06,890 >> Pra, nëse ju jeni të dua e teksteve ose ju jeni vetëm dua e lexuar gjëra online, 908 00:54:06,890 --> 00:54:09,670 atëherë kjo është një fantastike një nga Hadley Wickham, 909 00:54:09,670 --> 00:54:13,010 i cili gjithashtu krijoi të gjitha këto paketa really cool. 910 00:54:13,010 --> 00:54:17,420 Nëse jeni të dua e videos, pastaj Berkeley ka një bootcamp tmerrshëm 911 00:54:17,420 --> 00:54:21,060 kjo është several-- që është lloj i gjatë. 912 00:54:21,060 --> 00:54:24,210 Dhe kjo do të mësojmë pothuajse çdo gjë që ju dëshironi të dini rreth R. 913 00:54:24,210 --> 00:54:27,770 >> Dhe në mënyrë të ngjashme, nuk ka Codeacademy dhe të gjitha këto lloj tjetër 914 00:54:27,770 --> 00:54:29,414 Faqet e internetit e interaktive. 915 00:54:29,414 --> 00:54:31,580 Ata janë gjithashtu duke u common-- gjithnjë e më shumë i zakonshëm. 916 00:54:31,580 --> 00:54:33,749 Pra, kjo është shumë e ngjashme me Codeacademy. 917 00:54:33,749 --> 00:54:35,790 Dhe së fundi, në qoftë se ju vetëm dua Komunitetit dhe për të ndihmuar, 918 00:54:35,790 --> 00:54:38,800 këto janë një bandë e gjëra që ju mund të shkoni për të. 919 00:54:38,800 --> 00:54:40,880 Natyrisht, ne ende përdorin listat e postimeve, vetëm 920 00:54:40,880 --> 00:54:44,860 si pothuajse çdo tjetër Komuniteti gjuhë programimi. 921 00:54:44,860 --> 00:54:47,880 Dhe #rstats, kjo është Komuniteti ynë Twitter. 922 00:54:47,880 --> 00:54:49,580 Kjo është në të vërtetë mjaft të zakonshme. 923 00:54:49,580 --> 00:54:50,850 Dhe pastaj përdorues! 924 00:54:50,850 --> 00:54:52,340 Është vetëm konferencë tonë. 925 00:54:52,340 --> 00:54:55,390 >> Dhe pastaj, natyrisht, ju mund të përdorin të gjitha këto pyetje dhe të tjera gjëra, 926 00:54:55,390 --> 00:54:57,680 si Stack Derdhja, Google, dhe pastaj Github. 927 00:54:57,680 --> 00:55:00,490 Për shkak se shumica e këtyre paketave dhe një shumë e komunitetit 928 00:55:00,490 --> 00:55:03,420 do të jetë i përqëndruar rreth zhvillimit Kodi për shkak se është burim i hapur. 929 00:55:03,420 --> 00:55:05,856 Dhe kjo është vetëm me të vërtetë mirë në Github. 930 00:55:05,856 --> 00:55:08,730 Dhe së fundi, ju mund të më kontaktoni nëse ju vetëm keni ndonjë pyetje të shpejtë. 931 00:55:08,730 --> 00:55:13,530 Kështu që ju mund të gjeni mua në Twitter këtu, website im, dhe vetëm e-mail im. 932 00:55:13,530 --> 00:55:17,840 Kështu që shpresojmë, që ishte something-- vetëm një ngacmues i shkurtër 933 00:55:17,840 --> 00:55:20,900 e çfarë R është me të vërtetë në gjendje të bëj. 934 00:55:20,900 --> 00:55:23,990 Dhe shpresojmë se, ju vetëm shikoni këto tri lidhje 935 00:55:23,990 --> 00:55:25,760 dhe shikoni se çfarë ju mund të bëni më shumë. 936 00:55:25,760 --> 00:55:28,130 Dhe unë mendoj se është vetëm në lidhje me të. 937 00:55:28,130 --> 00:55:28,630 Thanks. 938 00:55:28,630 --> 00:55:30,780 >> [Duartrokitje] 939 00:55:30,780 --> 00:55:31,968