1 00:00:00,000 --> 00:00:05,691 2 00:00:05,691 --> 00:00:07,690 CONNOR HARRIS: Hala bazı heyecan verici bir video düşünmek 3 00:00:07,690 --> 00:00:12,570 Profesyonel danışmanlık tarafından üretilen O R çalışmalarında çok kullanır. 4 00:00:12,570 --> 00:00:16,329 >> ANLATICI: istatistiklerin arkasında ne var, analitik ve görsel 5 00:00:16,329 --> 00:00:19,770 Bugünün parlak veri bilim adamları ve iş dünyası liderleri güveniyor 6 00:00:19,770 --> 00:00:22,012 Güçlü kararlar? 7 00:00:22,012 --> 00:00:23,540 Sen her zaman göremeyebilirsiniz. 8 00:00:23,540 --> 00:00:24,790 Ama var. 9 00:00:24,790 --> 00:00:29,460 Bu R denir, açık kaynak r-- İstatistiksel programlama dili 10 00:00:29,460 --> 00:00:32,630 veri uzmanları, dünya Her şey için kullanımı üzerinde 11 00:00:32,630 --> 00:00:35,350 Sosyal geniş haritalama Online ve pazarlama trendleri 12 00:00:35,350 --> 00:00:39,210 mali ve iklimi geliştirmek için Bizim ekonomilerini sürücü yardımcı modeller 13 00:00:39,210 --> 00:00:40,780 ve topluluklar. 14 00:00:40,780 --> 00:00:44,910 >> Ama tam olarak R nedir ve burada R başladınız? 15 00:00:44,910 --> 00:00:48,620 Peki aslında, R başladı Burada iki profesör ile 16 00:00:48,620 --> 00:00:51,950 Kim daha iyi bir istatistik istedi öğrencileri için bir platform. 17 00:00:51,950 --> 00:00:56,030 Yani tek modellenmiş yarattı İstatistiksel dili S. sonra 18 00:00:56,030 --> 00:01:00,480 Onlar, diğerleri ile birlikte, üzerinde çalışıyor ve Ar kullanarak tuttu, 19 00:01:00,480 --> 00:01:05,489 R için araçlar oluşturma ve bulma R için yeni uygulamalar her gün. 20 00:01:05,489 --> 00:01:07,750 >> Bu sayede ise Dünya çapında topluluk çaba, 21 00:01:07,750 --> 00:01:11,850 R binlerce büyüyen tuttu Dahili kullanıcı tarafından oluşturulan kütüphanelerin 22 00:01:11,850 --> 00:01:15,500 R işlevselliğini artırmak için ve kalabalık kaynaklı kalite doğrulama 23 00:01:15,500 --> 00:01:19,740 ve en tanınmış destek her alanda endüstri liderleri olduğunu 24 00:01:19,740 --> 00:01:25,040 R., çünkü harika Hangi kullanır R o ne yaptığını iyi olur. 25 00:01:25,040 --> 00:01:28,540 Hızla uzmanlar tomurcuklanma ve Kolayca yorumlamak, etkileşim, 26 00:01:28,540 --> 00:01:33,790 ve hızla onların gösteren verileri görselleştirmek Dünya çapında R kullanıcılarının artan toplum 27 00:01:33,790 --> 00:01:36,380 ve ne kadar açık kaynak bakın R şekil devam ediyor 28 00:01:36,380 --> 00:01:39,340 İstatistiksel geleceği analiz ve veri bilimi. 29 00:01:39,340 --> 00:01:44,660 30 00:01:44,660 --> 00:01:47,710 >> CONNOR HARRIS: Tamam, harika. 31 00:01:47,710 --> 00:01:50,360 Kendi sunum Yani biraz daha ayık olacak. 32 00:01:50,360 --> 00:01:54,380 Bu bu kadar dahil olmayacak Heyecan verici arka plan müziği. 33 00:01:54,380 --> 00:01:59,160 Eğer video gördüğümüz gibi, R tür genel amaçlı bir programdır dili. 34 00:01:59,160 --> 00:02:03,720 Ancak çoğunlukla oluşturulmuş İstatistiksel çalışma için. 35 00:02:03,720 --> 00:02:07,980 >> Yani istatistikler için tasarlanmıştır, veri madenciliği için veri analizi için. 36 00:02:07,980 --> 00:02:12,420 Ve böylece bir sürü görebilirsiniz tasarım seçenekleri o R yapımcıları 37 00:02:12,420 --> 00:02:13,320 yaptı. 38 00:02:13,320 --> 00:02:15,472 Bu, büyük ölçüde için tasarlanmıştır olmayan insanlar 39 00:02:15,472 --> 00:02:17,930 programlama uzmanları, kim Sadece programlama toplayıp vardır 40 00:02:17,930 --> 00:02:23,460 tarafında yani onlar işlerini yapabilir sosyal bilimler ya da istatistik 41 00:02:23,460 --> 00:02:25,440 ya da her neyse. 42 00:02:25,440 --> 00:02:27,850 >> Çok bir yeri vardır C arasında önemli farklılıklar 43 00:02:27,850 --> 00:02:33,200 Sözdizimi ve paradigmalar ancak o kullandığı ölçüde aynıdır. 44 00:02:33,200 --> 00:02:36,830 Ve oldukça hissetmeniz gerekir yarasa kapalı evde çok. 45 00:02:36,830 --> 00:02:38,520 Bu bir zorunluluk dil. 46 00:02:38,520 --> 00:02:40,260 >> Bu konuda çok fazla endişe etmeyin terimini bilmiyorum. 47 00:02:40,260 --> 00:02:42,676 Ama bir ayrım var zorunluluk, Declarative arasında, 48 00:02:42,676 --> 00:02:43,810 ve işlevsel. 49 00:02:43,810 --> 00:02:47,600 Emir sadece yapmak anlamına gelir temelde komutları olan deyimleri. 50 00:02:47,600 --> 00:02:52,340 Ve sonra tercüman ya da Bilgisayar teker teker izler. 51 00:02:52,340 --> 00:02:56,630 Bu zayıf vardır, yazdığınız var R. hiçbir tür bildirimler 52 00:02:56,630 --> 00:02:59,130 >> Sonra yollar farklı türleri arasında 53 00:02:59,130 --> 00:03:03,920 biraz daha gevşek daha vardır bunlar, örneğin, C cinsindendir. 54 00:03:03,920 --> 00:03:06,450 Ve ben orada söylediğim gibi çok geniş olanaklar 55 00:03:06,450 --> 00:03:15,610 grafik için, istatistik Veri madenciliği için analiz. 56 00:03:15,610 --> 00:03:19,540 Bunlar hem yerleşik olan dil ve video dediği gibi, 57 00:03:19,540 --> 00:03:23,680 Üçüncü parti kütüphaneler binlerce olduğunu indirebilir ve ücretsiz olarak kullanabilirsiniz 58 00:03:23,680 --> 00:03:25,340 Çok gevşek lisans koşullarına. 59 00:03:25,340 --> 00:03:28,800 60 00:03:28,800 --> 00:03:31,500 >> Yani genel olarak, ben tavsiye ederim Bu iki kitap bakmak 61 00:03:31,500 --> 00:03:34,610 R. One üzerinde çalışmak için gidiyoruz eğer Bunların resmi R acemi en olduğunu 62 00:03:34,610 --> 00:03:35,110 kılavuz. 63 00:03:35,110 --> 00:03:38,660 O tarafından sürdürülür R. çekirdek geliştiricileri 64 00:03:38,660 --> 00:03:42,400 Sen yine ücretsiz indirebilirsiniz Oradaki bağlantıyı yasal ücret ve. 65 00:03:42,400 --> 00:03:45,430 66 00:03:45,430 --> 00:03:49,869 Tüm bu slaytlar gitmek için gidiyoruz internette yukarı, CS50 sitesinde 67 00:03:49,869 --> 00:03:50,660 Bundan sonra yapılır. 68 00:03:50,660 --> 00:03:53,690 Yani gerek kopyalamak çılgınca şeyler düştü. 69 00:03:53,690 --> 00:03:56,800 >> Diğeri bir Cosma Shalizi tarafından ders kitabı, 70 00:03:56,800 --> 00:04:00,100 Bir istatistik profesörü de kim Carnegie Mellon, İleri Veri denilen 71 00:04:00,100 --> 00:04:02,160 Bir Analysis View İlköğretim Noktası. 72 00:04:02,160 --> 00:04:04,010 Bu prensip bir R kitap değildir. 73 00:04:04,010 --> 00:04:07,130 Bu bir istatistik kitap ve Bir veri analiz kitabı. 74 00:04:07,130 --> 00:04:11,990 Ama bu insanlar için çok erişilebilir kim istatistik bilginin bir nebze var. 75 00:04:11,990 --> 00:04:13,750 >> Ben resmi bir ders almış hiç. 76 00:04:13,750 --> 00:04:17,269 Ben sadece ufak tefek biliyorum Çeşitli müttefik konulardan 77 00:04:17,269 --> 00:04:18,579 ben dersleri aldım. 78 00:04:18,579 --> 00:04:21,839 Ve anlıyorum başardı mükemmel iyi. 79 00:04:21,839 --> 00:04:25,630 >> Tüm rakamlar verilmektedir R. Onlar Ar yapılır 80 00:04:25,630 --> 00:04:30,280 ve onlar da kod listeleri var Her şeklin altında size o 81 00:04:30,280 --> 00:04:33,270 nasıl R kodu ile her figürü yapmak. 82 00:04:33,270 --> 00:04:37,400 Ve eğer çok kullanışlı Eğer taklit etmeye çalışıyoruz 83 00:04:37,400 --> 00:04:38,650 Bir kitapta gördüğünüz bazı rakam. 84 00:04:38,650 --> 00:04:47,840 >> Ve yine ücretsiz indir Üzgünüm stat.cmu.edu/cshalizi/ 85 00:04:47,840 --> 00:04:50,230 Bu yaklaşık işareti cshalizi çizgi olmalıdır. 86 00:04:50,230 --> 00:04:53,150 Bunu düzeltmek için emin olacağım Resmi slaytlar yukarı giderken. 87 00:04:53,150 --> 00:04:57,000 Sadece bir / ADAfaEPoV kitabýnýzýn kısaltması. 88 00:04:57,000 --> 00:04:59,850 89 00:04:59,850 --> 00:05:02,500 >> Yani genel caveats-- R yetenekleri bir yeri vardır. 90 00:05:02,500 --> 00:05:05,331 Ben sadece karşılamak için muktedir gidiyorum bir çok şey yüzeyi. 91 00:05:05,331 --> 00:05:08,580 Seminerin Ayrıca birinci bölümü Bir veri dökümü şey olacak. 92 00:05:08,580 --> 00:05:11,437 Ben bu konuda oldukça üzgünüm. 93 00:05:11,437 --> 00:05:13,770 Temelde, ben gidiyorum bir çok şey size tanıtmak 94 00:05:13,770 --> 00:05:15,350 yarasa kapalı, gidiyor olabildiğince çabuk. 95 00:05:15,350 --> 00:05:17,058 Ve sonra biz almak olan eğlenceli kısmı, 96 00:05:17,058 --> 00:05:20,570 Sana her şeyi göstermek demo Biz ekranda konuştuk ettik. 97 00:05:20,570 --> 00:05:23,321 Ve kendi etrafında oynayabilir. 98 00:05:23,321 --> 00:05:26,070 Yani bir sürü var oluyor Teknik şeyler burada atılmış. 99 00:05:26,070 --> 00:05:28,060 Tüm bu aşağı kopyalama endişe etmeyin. 100 00:05:28,060 --> 00:05:31,740 A Çünkü alabilirsiniz tüm Daha sonra CS50 web sitesinde şeyler. 101 00:05:31,740 --> 00:05:37,780 Ve B, gerçekten önemli değil slaytlar bu ezberlemek. 102 00:05:37,780 --> 00:05:40,462 Bunu almak daha önemli onunla bazı sezgisel tesis 103 00:05:40,462 --> 00:05:44,220 ve bu sadece uğraşırken geliyor. 104 00:05:44,220 --> 00:05:45,720 >> Peki neden R kullanabilir miyim? 105 00:05:45,720 --> 00:05:49,440 Temelde, bir proje varsa o Büyük veri setleri madencilik içerir, veri 106 00:05:49,440 --> 00:05:52,664 görselleştirme, sen Eğer konum R. kullanmalısınız 107 00:05:52,664 --> 00:05:55,830 karmaşık istatistiksel analiz yapma, Bu, Excel için zor olurdu 108 00:05:55,830 --> 00:05:58,010 Örneğin, öyle ayrıca good-- edilmesi 109 00:05:58,010 --> 00:06:00,506 Eğer istatistik yapıyoruz Otomatik oluyor analizi. 110 00:06:00,506 --> 00:06:02,130 Diyelim ki bir web sitesinin bakımı diyelim. 111 00:06:02,130 --> 00:06:06,320 Ve sunucu günlüğü okumak istediğiniz Her gün ve bazı listesini derlemek 112 00:06:06,320 --> 00:06:10,320 Üst ülkeler gibi bu Kullanıcıların, geliyor 113 00:06:10,320 --> 00:06:15,100 ne kadar bazı özet istatistikleri onlar web sitenize ya da her neyse harcama. 114 00:06:15,100 --> 00:06:16,910 Ve her gün bu çalıştırmak istiyor. 115 00:06:16,910 --> 00:06:20,280 >> Şimdi Excel'de yapıyorsan, Eğer, sunucu günlüğüne gitmek olurdu 116 00:06:20,280 --> 00:06:23,490 Bir içine almak Excel veri elektronik tablo, 117 00:06:23,490 --> 00:06:24,910 elle tüm analizleri çalıştırın. 118 00:06:24,910 --> 00:06:27,100 R ile, sadece tek bir komut dosyası yazabilirsiniz. 119 00:06:27,100 --> 00:06:29,520 Her gün çalıştırmak için planlayın işletim sisteminden. 120 00:06:29,520 --> 00:06:33,657 Ve sonra 2:00 am her gece, veya çalıştırmak için zamanlama her zaman, 121 00:06:33,657 --> 00:06:35,990 içinden bakacağız senin O gün için internet trafiği. 122 00:06:35,990 --> 00:06:39,010 Ve sonra ertesi gün, sen olacak Bu parlak, yeni bir rapor var 123 00:06:39,010 --> 00:06:41,710 tümü ile ya da her türlü bilgileri istedi. 124 00:06:41,710 --> 00:06:44,960 125 00:06:44,960 --> 00:06:50,217 >> Yani temelde R Cisco için Cisco analizi karşı programlama. 126 00:06:50,217 --> 00:06:51,050 Ön yapılır. 127 00:06:51,050 --> 00:06:53,104 Gerçek şeylerin içine dönelim. 128 00:06:53,104 --> 00:06:55,020 Yani üç Gerçek vardır dilde türleri. 129 00:06:55,020 --> 00:06:56,120 Sayısal tip var. 130 00:06:56,120 --> 00:07:01,250 Arasındaki farkın çeşit var tamsayılar ve kayan noktalar, 131 00:07:01,250 --> 00:07:02,769 ama gerçekten. 132 00:07:02,769 --> 00:07:04,560 Bir karakter var dizeleri, hangi yazın. 133 00:07:04,560 --> 00:07:07,100 Ve mantıklı var Boolean olan yazın. 134 00:07:07,100 --> 00:07:11,080 >> Ve türleri arasında dönüştürebilirsiniz Sayısal olarak bu fonksiyonları kullanarak, 135 00:07:11,080 --> 00:07:15,220 Mantıksal olarak karakteri olarak. 136 00:07:15,220 --> 00:07:17,510 Eğer ararsan, örneğin, Bir dize sayısal olarak, 137 00:07:17,510 --> 00:07:20,030 o dize okumak için çalışacağız bir dizi aynı yolu olarak 138 00:07:20,030 --> 00:07:25,897 Bu A2I ve scanf yapmak, ve C ise Eğer doğru veya yanlış üzerine sayısal olarak çağrı 139 00:07:25,897 --> 00:07:26,980 bu 1 veya 0 çevirecektir. 140 00:07:26,980 --> 00:07:29,110 Eğer karakter olarak ararsanız bir şey o olacak 141 00:07:29,110 --> 00:07:32,550 Bir içine dönüştürmek dize gösterimi. 142 00:07:32,550 --> 00:07:34,990 >> Sonra vektörler ve matrisler bulunmaktadır. 143 00:07:34,990 --> 00:07:37,580 Yani vektörler temelde 1 boyutlu diziler. 144 00:07:37,580 --> 00:07:40,600 Onlar biz diziler dediğimiz C. Matrisler, 2 boyutlu diziler. 145 00:07:40,600 --> 00:07:42,350 Sonra daha yüksek boyutlu diziler yapabilirsiniz 146 00:07:42,350 --> 00:07:48,560 3, 4, 5 boyutları ya da her neyse var sayısal değerler, dizeleri, 147 00:07:48,560 --> 00:07:52,860 mantıksal değerler. 148 00:07:52,860 --> 00:07:55,380 >> Sen de vardır listeleri vardır ilişkisel dizi bir tür. 149 00:07:55,380 --> 00:07:57,390 Ben biraz içine alırsınız. 150 00:07:57,390 --> 00:07:59,390 Yani önemli bir şey O R insanları gezileri 151 00:07:59,390 --> 00:08:01,470 herhangi olmasıdır Gerçek, saf atom türleri. 152 00:08:01,470 --> 00:08:05,870 Hiçbir gerçek ayrım var Bir numara, sayısal bir değer olduğu gibi, 153 00:08:05,870 --> 00:08:07,920 sayısal değerler ve bir liste. 154 00:08:07,920 --> 00:08:12,370 Sayısal değerler aslında uzunluğu 1 vektörlerin aynı. 155 00:08:12,370 --> 00:08:14,959 Bu bir dizi vardır önemli etkileri. 156 00:08:14,959 --> 00:08:17,500 Bir, o yapabileceğiniz anlamına gelir dahil çok kolay şeyler 157 00:08:17,500 --> 00:08:21,037 Bir vektör bir numara ekleme gibi. 158 00:08:21,037 --> 00:08:23,120 R olacak temelde şekil dışarı Bununla ne demek. 159 00:08:23,120 --> 00:08:24,610 Ve ben bir saniye içinde o kadar alırsınız. 160 00:08:24,610 --> 00:08:27,930 Aynı zamanda hiçbir yolu yok demektir type ölçüde checker-- 161 00:08:27,930 --> 00:08:30,530 Böyle bir şeyin anlatmak için r-- var 162 00:08:30,530 --> 00:08:33,780 Tek değer ilettik zaman bir dizi ya da tam tersi beklediği zaman. 163 00:08:33,780 --> 00:08:39,159 Ve bazı garip neden olabilir Ben ne zaman koştu sıkıntılar 164 00:08:39,159 --> 00:08:42,252 Benim yaz işi sırasında R kullanıyordum. 165 00:08:42,252 --> 00:08:43,710 Ve hiçbir karma tip diziler vardır. 166 00:08:43,710 --> 00:08:46,543 Yani bir dizi olduğunu olamaz İlk elemanları, bilmiyorum edilir 167 00:08:46,543 --> 00:08:49,332 string "John" ve İkinci unsur numarası 42 olduğunu. 168 00:08:49,332 --> 00:08:52,540 Bunu yapmayı denerseniz, o zaman alırsınız her şey sadece bir dizeye dönüştürülür. 169 00:08:52,540 --> 00:08:54,760 Yani biz dize John, dize 42 var. 170 00:08:54,760 --> 00:08:58,250 171 00:08:58,250 --> 00:09:02,025 >> En features-- kadar sıradışı söz dizimi R sözdizimi C'ye çok benzer 172 00:09:02,025 --> 00:09:04,690 Bir kaç önemli farklar vardır. 173 00:09:04,690 --> 00:09:05,620 Yazma çok zayıf. 174 00:09:05,620 --> 00:09:07,360 Yani hiçbir değişken bildirimleri vardır. 175 00:09:07,360 --> 00:09:12,670 Atama garip kullanır Hata operatörü tire daha azdır. 176 00:09:12,670 --> 00:09:15,340 Yorumlar karma işareti bulunmaktadır. 177 00:09:15,340 --> 00:09:19,230 Ben hashtag diyoruz günler artık sanırım bu gerçekten değil ama değil accurate-- 178 00:09:19,230 --> 00:09:21,810 çift ​​eğik çizgi. 179 00:09:21,810 --> 00:09:24,710 >> Modüler kalıntılar %% işaretleri ile vardır. 180 00:09:24,710 --> 00:09:30,172 Tamsayı bölümü% /% ile yansıtılan ne zaman okumak çok zor 181 00:09:30,172 --> 00:09:30,880 ekranda. 182 00:09:30,880 --> 00:09:34,150 183 00:09:34,150 --> 00:09:37,200 Sen aralıklarını alabilirsiniz kolon ile tamsayılar. 184 00:09:37,200 --> 00:09:41,840 Yani 2,5 sana bir vektör verecek Tüm numaralar 2 ile 5 arasında. 185 00:09:41,840 --> 00:09:44,530 >> Diziler tek endeksli olan, hangi vida bir sürü insan 186 00:09:44,530 --> 00:09:47,540 Onlar daha fazla iseniz kadar Tipik programlama dilleri, 187 00:09:47,540 --> 00:09:50,450 nerede C, gibi en şeyler sıfır endeksli bulunmaktadır. 188 00:09:50,450 --> 00:09:54,420 Yine, bu nereye R'ın miras gibi değil bir dil olarak 189 00:09:54,420 --> 00:09:56,560 profesyonel programcılar geliyor. 190 00:09:56,560 --> 00:09:59,680 Bir sosyolog iseniz veya Bir ekonomist falan 191 00:09:59,680 --> 00:10:01,980 ve kullanmak için çalışıyoruz R, temelde bir yardımcı olarak 192 00:10:01,980 --> 00:10:03,832 senin daha önemlisi profesyonel iş, 193 00:10:03,832 --> 00:10:06,040 bulmak için gidiyoruz Biraz daha doğal bir endekslenmesi. 194 00:10:06,040 --> 00:10:09,890 Eğer saymaya başlayın Çünkü günlük yaşamda 1 değil 0. 195 00:10:09,890 --> 00:10:13,260 >> For-döngüler, bu benzer foreach, PHP inşa 196 00:10:13,260 --> 00:10:17,090 Eğer alırsınız hangi Çok yakında açmayız öğrenirler. 197 00:10:17,090 --> 00:10:22,540 Hangi vektör değeri için ve o zaman değeri ile şeyler yapabilirsiniz. 198 00:10:22,540 --> 00:10:24,040 HEDEF KİTLE: Bu derste kadar geldi. 199 00:10:24,040 --> 00:10:26,248 CONNOR HARRIS: Oh, işte mükemmel, ders gel. 200 00:10:26,248 --> 00:10:29,815 HEDEF KİTLE: atama, öyle sağdan sola doğru işaret gerekiyordu? 201 00:10:29,815 --> 00:10:31,440 CONNOR HARRIS: sağa sola From, evet. 202 00:10:31,440 --> 00:10:34,720 Üzerinde değeri olarak düşünmek olabilir değişken içine itti hakkı 203 00:10:34,720 --> 00:10:36,240 soldaki. 204 00:10:36,240 --> 00:10:36,781 HEDEF KİTLE: Tamam. 205 00:10:36,781 --> 00:10:39,770 206 00:10:39,770 --> 00:10:42,330 >> CONNOR HARRIS: Son olarak işlevi sözdizimi biraz garip. 207 00:10:42,330 --> 00:10:48,460 Fonksiyon adı foo, atanmış Bu kelime fonksiyonu, ardından 208 00:10:48,460 --> 00:10:51,530 sonra tüm argümanlar tarafından Bundan sonra fonksiyonun gövdesi. 209 00:10:51,530 --> 00:10:53,280 Yine bunlar olabilir biraz tuhaf görünüyor. 210 00:10:53,280 --> 00:10:57,181 Onlar sonra ikinci doğa olacaksın Eğer biraz dil ile çalışmak. 211 00:10:57,181 --> 00:10:58,930 Vektörlerin Yani, yolu Bir vektör inşa 212 00:10:58,930 --> 00:11:04,550 Bir anahtar kelime size C tipi, daha sonra, bir istediğiniz tüm numaralar veya dizeleri 213 00:11:04,550 --> 00:11:06,490 ya da her neyse. 214 00:11:06,490 --> 00:11:07,995 Bağımsız değişkenler de vektörler. 215 00:11:07,995 --> 00:11:09,620 Ama ortaya çıkan dizi düzleştirilmiş alır. 216 00:11:09,620 --> 00:11:14,385 Yani diziler nerede olamaz bazı unsurlar tek sayılar 217 00:11:14,385 --> 00:11:17,010 ve bazı öğeler diziler kendileridir. 218 00:11:17,010 --> 00:11:20,010 >> Bir inşa çalışırsanız eğer öyleyse Dizi ilk unsur 4'tür edildi 219 00:11:20,010 --> 00:11:22,370 ve ikinci eleman Dizi 3,5 sen edeceğiz olduğunu 220 00:11:22,370 --> 00:11:25,890 Sadece, 4,3,5 üç element dizi olsun. 221 00:11:25,890 --> 00:11:27,760 Bunlar karışık tip olamaz. 222 00:11:27,760 --> 00:11:32,290 Eğer okumak veya yazmak çalışırsanız bir vektörün sınırlarının dışına 223 00:11:32,290 --> 00:11:36,640 Eğer NA olarak adlandırılan bu değeri alırsınız hangi bir eksik değeri duruyor. 224 00:11:36,640 --> 00:11:39,900 Bu yöneliktir istatistikçiler gibi kim 225 00:11:39,900 --> 00:11:43,080 eksik veri setleri ile çalışıyoruz. 226 00:11:43,080 --> 00:11:46,460 >> Eğer gerekiyor bir işlevi uygularsanız bir dizi sadece bir numara almak için 227 00:11:46,460 --> 00:11:49,220 o zaman ne alırsınız, bir Fonksiyon dizi üzerinde eşler. 228 00:11:49,220 --> 00:11:52,130 Senin işlevi en götürür diyelim Yani Bir numara ve döner onu kare. 229 00:11:52,130 --> 00:11:58,170 Sen dizisine 2,3,5 o uygulanır Ne alırsınız dizi 4,9,25 olduğunu. 230 00:11:58,170 --> 00:12:00,010 >> Ve bu çok kullanışlı Seni anlamına gelir, çünkü 231 00:12:00,010 --> 00:12:03,374 için döngüler için yazmak zorunda değilsiniz uygulanması gibi çok basit şeyler yapıyor 232 00:12:03,374 --> 00:12:05,040 Bir veri kümesinin tüm üyelerine bir işlev. 233 00:12:05,040 --> 00:12:08,557 Hangi büyük çalışıyorsanız veri setleri, bir çok şey yapmak zorunda. 234 00:12:08,557 --> 00:12:10,390 İkili fonksiyonlar girişi ile uygulamalı giriş. 235 00:12:10,390 --> 00:12:12,430 Ben içine alırsınız. 236 00:12:12,430 --> 00:12:16,750 Sen dizilerle erişebilirsiniz Köşeli parantez veya vektörler. 237 00:12:16,750 --> 00:12:22,300 Yani vektör adı köşeli parantez 1 Size ilk elemanı verecektir. 238 00:12:22,300 --> 00:12:25,510 Vektör adı köşeli parantezler 2 Size ikinci elemanı verecektir. 239 00:12:25,510 --> 00:12:27,530 >> Bir vektör üzerinde geçebilir ve endeksleri siz edeceğiz 240 00:12:27,530 --> 00:12:29,640 geri temelde bir alt faktör dışında olsun. 241 00:12:29,640 --> 00:12:34,990 Yani vektör adı parantez C yapabilirsiniz 2,4 ve içeren bir vektör dışarı alırsınız 242 00:12:34,990 --> 00:12:38,804 ikinci ve dördüncü dizinin öğeleri. 243 00:12:38,804 --> 00:12:40,720 Ve isterseniz sadece Hızlı özet istatistik 244 00:12:40,720 --> 00:12:47,529 interkartil gibi vektör aralık, medyan, maksimum, ne olursa olsun, 245 00:12:47,529 --> 00:12:49,820 Sadece özetini yazabilirsiniz Vektör adı ve çık. 246 00:12:49,820 --> 00:12:52,680 Bu gerçekten yararlı değil programlama ama oynuyorsanız 247 00:12:52,680 --> 00:12:55,990 veri setleri etrafında, bu kullanışlı. 248 00:12:55,990 --> 00:12:58,650 >> Temelde Matrices-- yüksek boyutlu diziler. 249 00:12:58,650 --> 00:13:01,190 Onlar bu özel gösterimde sözdizimi vardır. 250 00:13:01,190 --> 00:13:07,620 Alır bir dizi ile Matrix verilerle üzgünüm, matrisin açmayız dolu 251 00:13:07,620 --> 00:13:09,780 satır sayısı, sütun sayısı. 252 00:13:09,780 --> 00:13:13,180 Bazı veriler var, bu doldurur dizi temelde yukarıdan aşağıya gidiyor 253 00:13:13,180 --> 00:13:13,380 ilk. 254 00:13:13,380 --> 00:13:14,190 Sonra sağa sola. 255 00:13:14,190 --> 00:13:15,030 Yani, böyle. 256 00:13:15,030 --> 00:13:17,809 257 00:13:17,809 --> 00:13:19,600 Ve R inşa etti matris çarpma, 258 00:13:19,600 --> 00:13:24,310 spektral ayrışım, köşegenleştirilmesi, bir çok şey. 259 00:13:24,310 --> 00:13:27,785 Eğer yüksek boyutlu istiyorsanız dizileri, yani, 3, 4, 5, 260 00:13:27,785 --> 00:13:29,410 ya ne olursa olsun boyutlar yapabilirsiniz. 261 00:13:29,410 --> 00:13:34,400 Sözdizimi dizisi loş c eşittir olduğunu, Daha sonra boyutların listesi. 262 00:13:34,400 --> 00:13:38,620 Bir 4 boyutlu bir dizi istiyorsanız boyutları 4, 7, 8, 9, dizi, 263 00:13:38,620 --> 00:13:45,470 Loş c (4,7,8,9) eşittir. 264 00:13:45,470 --> 00:13:51,180 >> Sen parantez tek değerlerine erişilebilir İlk giriş virgül ikinci giriş. 265 00:13:51,180 --> 00:13:54,870 Sen tüm dilimleri alabilirsiniz satır veya sütunların. 266 00:13:54,870 --> 00:13:59,900 Bu eksik sözdizimi sayesinde var Sadece sayı virgül veya virgül sütunu satır 267 00:13:59,900 --> 00:14:00,400 sayısı. 268 00:14:00,400 --> 00:14:02,874 269 00:14:02,874 --> 00:14:04,540 Yani listeler ilişkili dizinin bir türüdür. 270 00:14:04,540 --> 00:14:06,360 Onlar burada kendi sözdizimi vardır. 271 00:14:06,360 --> 00:14:08,320 Yine çılgınca yok Bütün bu aşağı kopyalayın. 272 00:14:08,320 --> 00:14:11,370 Bu sadece bu yüzden insanlar Daha sonra slaytlar geçiyor 273 00:14:11,370 --> 00:14:13,089 tüm güzel referans bu var. 274 00:14:13,089 --> 00:14:16,130 Ve bu çok doğal bir kez olacak Aslında demolar üzerinden yürümek. 275 00:14:16,130 --> 00:14:19,295 276 00:14:19,295 --> 00:14:20,920 Bu nedenle, temelde ilişkili diziler listeler. 277 00:14:20,920 --> 00:14:27,040 Sizinle değerlerine erişebilirsiniz Liste adı, dolar işareti, tuşuna basın. 278 00:14:27,040 --> 00:14:31,370 Listenizi foo adlı Yani, o zaman böyle erişebilirsiniz. 279 00:14:31,370 --> 00:14:37,032 Tüm bir anahtar-değer çifti alabilirsiniz köşeli ayraç endeksinde geçerek. 280 00:14:37,032 --> 00:14:39,240 Eğer varolmayan dan okursanız anahtar, null alırsınız. 281 00:14:39,240 --> 00:14:41,150 Bu hata olmaz. 282 00:14:41,150 --> 00:14:43,590 Şey R olarak yapacak, bir olabildiğince null çok. 283 00:14:43,590 --> 00:14:46,580 Ve bu eğer anlamına gelebilir boş çıkmak beklemiyordum 284 00:14:46,580 --> 00:14:51,840 Bazı liste okuma, bazı alırsınız daha da aşağı öngörülemeyen hatalar 285 00:14:51,840 --> 00:14:52,620 çizgi. 286 00:14:52,620 --> 00:14:54,890 >> Bu başıma benim Yaz iş ne zaman R kullanıyordum 287 00:14:54,890 --> 00:14:58,410 Ben nasıl belli değişti nerede Liste tek bir noktada tanımlandı 288 00:14:58,410 --> 00:15:05,410 ancak daha sonra değişmedi ondan değerleri okumak kodu. 289 00:15:05,410 --> 00:15:10,190 Ve böylece ne oldu ben oldu Bu listenin dışında null değerleri okuma, 290 00:15:10,190 --> 00:15:13,090 fonksiyonları içine geçirerek, ve çok karışık olmak 291 00:15:13,090 --> 00:15:16,000 Ben her türlü var rastgele sonsuzluklar kadar kırpma 292 00:15:16,000 --> 00:15:16,790 Bu işlevi. 293 00:15:16,790 --> 00:15:20,730 Belirli maksimum uygulamak Çünkü eğer ya da asgari fonksiyonlar null, 294 00:15:20,730 --> 00:15:22,570 Eğer sonsuz değerlerini alırsınız. 295 00:15:22,570 --> 00:15:26,400 296 00:15:26,400 --> 00:15:29,180 >> Veri çerçeveleri, onlar listenin bir alt konum. 297 00:15:29,180 --> 00:15:31,170 Her değer bir vektördür aynı uzunlukta. 298 00:15:31,170 --> 00:15:34,220 Ve onlar sunmak için kullanılan konum, temelde, veri tabloları. 299 00:15:34,220 --> 00:15:36,175 Bu başlatma sözdizimi var. 300 00:15:36,175 --> 00:15:38,800 Bu, tüm daha fazla olur net Eğer demo gidince. 301 00:15:38,800 --> 00:15:42,240 302 00:15:42,240 --> 00:15:44,240 Ve güzel bir şey hakkında veri çerçeveleri senin olduğunu 303 00:15:44,240 --> 00:15:49,380 tüm sütunlara isimler verebilirsiniz ve tüm satırlara isimler. 304 00:15:49,380 --> 00:15:53,890 Ve böylece erişen yapar Onları biraz dostça. 305 00:15:53,890 --> 00:15:59,130 Ayrıca, bu nasıl en fonksiyonları olduğunu Excel tabloları verileri okumak 306 00:15:59,130 --> 00:16:03,820 veya metin dosyaları, örneğin, verilerindeki okuyacaktır. 307 00:16:03,820 --> 00:16:07,555 Onlar içine koyacağım veri çerçevesinin çeşit. 308 00:16:07,555 --> 00:16:09,680 Fonksiyonlar functions-- Yani sözdizimi biraz garip. 309 00:16:09,680 --> 00:16:16,160 Yine işlevin adı, Daha sonra, bu anahtar kelime fonksiyon atamak ve 310 00:16:16,160 --> 00:16:17,900 argümanlar listesi. 311 00:16:17,900 --> 00:16:24,080 Bazı güzel şeyler vardır Yani nasıl fonksiyonları burada çalışıyorum. 312 00:16:24,080 --> 00:16:28,170 Biri için, aslında atayabilirsiniz Belirli argümanları varsayılan değerler. 313 00:16:28,170 --> 00:16:32,910 Yani R1 söyleyebiliriz equals-- sen foo söyleyebiliriz 314 00:16:32,910 --> 00:16:38,290 R1 şey eşittir bir işlevdir Kullanıcı belirtiyorsa varsayılan 315 00:16:38,290 --> 00:16:39,090 Hiçbir argüman. 316 00:16:39,090 --> 00:16:41,932 Aksi takdirde, o koymak ne var. 317 00:16:41,932 --> 00:16:44,140 Ve bu çok kullanışlı çünkü bir çok fonksiyonu 318 00:16:44,140 --> 00:16:47,910 var sık ​​sık onlarca veya argümanlar yüzlerce. 319 00:16:47,910 --> 00:16:51,210 Komplo örneğin olanlar grafikler veya komplo dağılım araziler 320 00:16:51,210 --> 00:16:54,430 kontrol argümanlar var başlık ve ekseninden şeyi 321 00:16:54,430 --> 00:16:59,512 regresyon çizgilerinin renk etiketler. 322 00:16:59,512 --> 00:17:01,470 Ve eğer öyleyse istemediğiniz insanlar belirtmek yapmak 323 00:17:01,470 --> 00:17:04,050 Bunların her biri argümanlar yüzlerce 324 00:17:04,050 --> 00:17:07,674 her bir yanını kontrol Bir komplo ya da bir gerileme ya da her neyse, 325 00:17:07,674 --> 00:17:09,299 bu varsayılan değerleri olması güzel. 326 00:17:09,299 --> 00:17:12,700 327 00:17:12,700 --> 00:17:19,146 >> Ve sonra aslında can Buraya geri gördüğümüz gibi yazın. 328 00:17:19,146 --> 00:17:22,869 Ya da daha iyi bir örnek bulmak. 329 00:17:22,869 --> 00:17:28,690 Eğer işlevleri çağırdığınızda aslında can argüman isimlerini kullanarak onları arayın. 330 00:17:28,690 --> 00:17:33,919 Yani burada bir örnek matris yapıcı. 331 00:17:33,919 --> 00:17:34,960 Üç argüman alır. 332 00:17:34,960 --> 00:17:36,760 Genellikle veri var, hangi bir vektördür. 333 00:17:36,760 --> 00:17:38,920 Sen N satır, sahip olduğu satır sayısıdır. 334 00:17:38,920 --> 00:17:41,160 Siz N sütun sayısını cols-- var. 335 00:17:41,160 --> 00:17:43,920 Yazarsanız şey N satır eşittir olursa olsun 336 00:17:43,920 --> 00:17:46,520 ve N col ne olursa olsun zaman eşittir Eğer bu işlevi aradığınız 337 00:17:46,520 --> 00:17:47,770 aslında bunları tersine çevirebilirsiniz. 338 00:17:47,770 --> 00:17:51,590 Yani birinci ve N satır N col koyabilirsiniz İkinci ve hiçbir fark yaratacak. 339 00:17:51,590 --> 00:17:54,660 Yani güzel bir özellik. 340 00:17:54,660 --> 00:17:56,260 >> Ithalat ve ihracat yaptım. 341 00:17:56,260 --> 00:18:00,010 Bu temelde, yapılabilir. 342 00:18:00,010 --> 00:18:03,816 Yazmak için olanakları da vardır keyfi R bir ikili dosya nesneleri 343 00:18:03,816 --> 00:18:05,190 ve sonra geri daha sonra bunları okuyun. 344 00:18:05,190 --> 00:18:08,030 Eğer yapıyoruz kullanışlı olan Büyük bir interaktif oturumda R 345 00:18:08,030 --> 00:18:12,850 ve kaydetmeniz gerekir işler çok çabuk. 346 00:18:12,850 --> 00:18:16,460 Varsayılan olarak R çalışma dizini vardır Dosyaları içine yazılır olsun o 347 00:18:16,460 --> 00:18:19,410 ve gelen geri okuyun. 348 00:18:19,410 --> 00:18:22,350 Bunu o görebilirsiniz getwg, setdw ile değiştirin. 349 00:18:22,350 --> 00:18:25,630 Burada özellikle ilginç bir şey 350 00:18:25,630 --> 00:18:28,270 >> Yani şimdi gerçek istatistikler çoklu doğrusal regresyon stuff--. 351 00:18:28,270 --> 00:18:30,960 352 00:18:30,960 --> 00:18:34,910 Her zamanki sözdizimi Yani biraz karmaşık. 353 00:18:34,910 --> 00:18:37,260 Model temelde büyük bir nesnedir. 354 00:18:37,260 --> 00:18:39,910 Bu, lm atanmaktadır hangi bir işlev çağrısı olduğunu. 355 00:18:39,910 --> 00:18:43,840 Birinci eleman, y tilde x1 artı ne olursa olsun. 356 00:18:43,840 --> 00:18:46,574 357 00:18:46,574 --> 00:18:47,990 Benim sözdizimi burada biraz kafa karıştırıcı. 358 00:18:47,990 --> 00:18:49,490 Ben, bu oldukça üzgünüm Standart bir yoldur 359 00:18:49,490 --> 00:18:50,990 bilgisayar bilim kitapları bunu. 360 00:18:50,990 --> 00:18:54,890 Ama biraz garip. 361 00:18:54,890 --> 00:18:58,200 >> Yani temelde, bu lm var Parantez, ilk öğe 362 00:18:58,200 --> 00:19:06,730 üzgünüm variable-- edilir bağımlı Değişken tilde x1 artı x2 artı 363 00:19:06,730 --> 00:19:10,910 Bağımsız Ancak birçok değişkenler var. 364 00:19:10,910 --> 00:19:14,240 Sonra, bu da olabilir Vektörler, hepsi aynı uzunlukta. 365 00:19:14,240 --> 00:19:16,220 Ya da sütun olabilir Bir veri çerçevesindeki başlıkları 366 00:19:16,220 --> 00:19:18,553 Sadece belirttiğiniz İkinci argüman veri çerçevesi. 367 00:19:18,553 --> 00:19:23,270 368 00:19:23,270 --> 00:19:26,380 >> Ayrıca belirtebilirsiniz Daha karmaşık bir formül 369 00:19:26,380 --> 00:19:31,990 böylece doğrusal gerek yok bir bağımlı değişkeni geriler, 370 00:19:31,990 --> 00:19:34,440 ya önceden varolan bir vektör üzerinde tek bir vektör. 371 00:19:34,440 --> 00:19:38,070 Örneğin, yapabileceğim bir Vektör bileşeni y kare artı 1 372 00:19:38,070 --> 00:19:42,100 ve karşı geriler diğer bazı vektör oturum açın. 373 00:19:42,100 --> 00:19:45,200 Sen özetleri yazdırabilirsiniz denilen bu komutla modeli 374 00:19:45,200 --> 00:19:48,607 summary-- sadece özet modeli Parens. 375 00:19:48,607 --> 00:19:50,190 Yine açıklamak gereken başka bir şey. 376 00:19:50,190 --> 00:19:55,407 377 00:19:55,407 --> 00:19:58,615 Düzeltilmiş alacak başka bir şey Slaytlar internette yukarı giderken. 378 00:19:58,615 --> 00:20:01,127 379 00:20:01,127 --> 00:20:03,210 Sadece hesaplamak istiyorsanız basit bir korelasyon 380 00:20:03,210 --> 00:20:09,170 Eğer korelasyon vektör kullanabilirsiniz 1 vektörü 2 fonksiyon çekirdek. 381 00:20:09,170 --> 00:20:11,856 Yöntem varsayılan olarak Pearson korelasyonları. 382 00:20:11,856 --> 00:20:13,480 Bunlar yapabileceğiniz standart olanlardır. 383 00:20:13,480 --> 00:20:15,990 Orada da Spearman ve Kendell korelasyon 384 00:20:15,990 --> 00:20:19,530 bunlardan bazıları çeşitli vardır sıralı korelasyon. 385 00:20:19,530 --> 00:20:23,600 Eh onlar ürünü hesaplamak yok vektörlerin kendi aralarında anlar, 386 00:20:23,600 --> 00:20:28,511 ancak Vektörün rütbe siparişlerinin. 387 00:20:28,511 --> 00:20:29,510 Ben daha sonra açıklayacağım. 388 00:20:29,510 --> 00:20:30,120 >> HEDEF KİTLE: Hızlı soru 389 00:20:30,120 --> 00:20:30,360 >> CONNER HARRIS: Elbette. 390 00:20:30,360 --> 00:20:33,151 >> HEDEF KİTLE: Yani hesaplanması ediyoruz Basit korelasyon yapmak için 391 00:20:33,151 --> 00:20:37,655 Eğer bir istatistik var olduğunu varsayalım korelasyon önemi? 392 00:20:37,655 --> 00:20:39,030 CONNER HARRIS: Sen gerekmez. 393 00:20:39,030 --> 00:20:41,840 394 00:20:41,840 --> 00:20:43,960 Bir lm temelde sadece bir makinedir. 395 00:20:43,960 --> 00:20:47,690 Bu iki şey alacak ve o tükürmek 396 00:20:47,690 --> 00:20:49,770 en uygun hattı katsayıları. 397 00:20:49,770 --> 00:20:52,310 Ayrıca, standart raporlar Bu katsayılar üzerinde hatalar. 398 00:20:52,310 --> 00:20:55,865 Gibi Ve, size anlatacağım istatistiksel olarak anlamlı kesişim 399 00:20:55,865 --> 00:20:56,740 veya 0 farkı. 400 00:20:56,740 --> 00:20:59,400 En iyi eğimi fit çizgi istatistiksel 401 00:20:59,400 --> 00:21:01,510 sıfırdan farklı, vesaire. 402 00:21:01,510 --> 00:21:06,260 Hiçbir şey varsayar Yani, sanırım Sorunuzun en iyi cevaptır. 403 00:21:06,260 --> 00:21:07,410 TAMAM. 404 00:21:07,410 --> 00:21:14,650 >> Plotting-- böylece temel nedeni sen-meli çoklu doğrusal regresyon gibi, R kullanın. 405 00:21:14,650 --> 00:21:17,320 Temelde her dil Bunun için bazı tesisi bulunmaktadır. 406 00:21:17,320 --> 00:21:21,365 Ve dürüstçe için R 'sözdizimi regresyon biraz esrarlı olduğunu. 407 00:21:21,365 --> 00:21:22,990 Gerçekten parladığı Ama komplo olduğunu. 408 00:21:22,990 --> 00:21:28,090 >> Beygir fonksiyonu komplo ve iki vektör, x ve y alır. 409 00:21:28,090 --> 00:21:33,010 Sonra elips çok açılımı İsteğe bağlı argümanlar çok sayıda olduğunu 410 00:21:33,010 --> 00:21:39,190 başlıklarından renklere her şeyi kontrol Çeşitli çizgiler veya çeşitli noktalarından, 411 00:21:39,190 --> 00:21:40,200 arsa türüne. 412 00:21:40,200 --> 00:21:42,250 Sen dağılım olabilir araziler veya satır araziler. 413 00:21:42,250 --> 00:21:47,900 414 00:21:47,900 --> 00:21:49,710 >> [Duyulamaz] 2 vektörleri aynı uzunlukta. 415 00:21:49,710 --> 00:21:53,780 Bunu eklemek memnuniyeti ile önce edebilirsiniz senin komut veri çerçeve. 416 00:21:53,780 --> 00:22:01,220 Ve bu sadece sütunu kullanmanıza izin verir yerine ayrı vektörlerin başlıkları. 417 00:22:01,220 --> 00:22:05,410 Sen en uygun çizgiler ve yerel ekleyebilirsiniz senin grafiğe regresyon eğrileri. 418 00:22:05,410 --> 00:22:09,390 >> Bu komutlar listelenir Burada, ab çizgi ve hatlar, 419 00:22:09,390 --> 00:22:11,640 Varsayılan olarak bu olsun açılır pencere içine yazılır 420 00:22:11,640 --> 00:22:15,560 o varsayar çünkü etkileşimli R kullanıyoruz. 421 00:22:15,560 --> 00:22:17,310 Eğer değilseniz yapabilirsiniz İki dosya yazmanız 422 00:22:17,310 --> 00:22:21,600 İstediğiniz gerçekten herhangi bir biçimde bulunmaktadır. 423 00:22:21,600 --> 00:22:25,410 Üzgünüm, ben sadece fark bir yazım hatası var. 424 00:22:25,410 --> 00:22:30,887 425 00:22:30,887 --> 00:22:32,720 Eğer açmak istiyorsanız Başka bir grafik aygıt 426 00:22:32,720 --> 00:22:39,200 PNG ya da denilen bu fonksiyonu kullanabilirsiniz JPEG veya diğer görüntü biçimlerine bir sürü. 427 00:22:39,200 --> 00:22:42,319 Ve sen grafikleri yazabilirsiniz ne olursa olsun dosya adı belirtin. 428 00:22:42,319 --> 00:22:45,110 Eğer use-- zorunda iptal etmek Ben slide-- bu yazmadım 429 00:22:45,110 --> 00:22:49,650 ancak bir işlev olarak adlandırılan dev var bu kapalı nokta hiçbir argüman alır. 430 00:22:49,650 --> 00:22:51,517 >> Sonra imkanları vardır 3D komplo için 431 00:22:51,517 --> 00:22:53,350 ve kontur için komplo Eğer yapmak istiyorsanız 432 00:22:53,350 --> 00:22:55,700 İki bağımsız değişkenlerin grafikleri. 433 00:22:55,700 --> 00:22:57,150 Ben şu anda bu içine almazsınız. 434 00:22:57,150 --> 00:22:59,130 >> Ayrıca bazı vardır animasyon için tesisler 435 00:22:59,130 --> 00:23:01,300 Bu genellikle üçüncü şahıslar tarafından yapılmaktadır. 436 00:23:01,300 --> 00:23:06,330 Ben, R grafikleri ile animasyonlar yaptık ama bu üçüncü parti kullanmadıysanız 437 00:23:06,330 --> 00:23:06,940 kütüphaneler. 438 00:23:06,940 --> 00:23:09,929 Yani ben gerçekten kanıtı olamaz nasıl iyi olduklarını. 439 00:23:09,929 --> 00:23:12,220 Ne istiyorsanız tavsiye R kullanarak animasyonlar yapmak 440 00:23:12,220 --> 00:23:16,480 Eğer tüm dışarı yazabilirsiniz olan animasyonlar için çerçeveler 441 00:23:16,480 --> 00:23:18,470 ve sonra bir kullanabilirsiniz üçüncü program-- 442 00:23:18,470 --> 00:23:23,630 Tipik olanlar FFmpeg denir veya ImageMagick-- dikiş 443 00:23:23,630 --> 00:23:26,540 tek animasyon içine kare tüm. 444 00:23:26,540 --> 00:23:28,380 >> Demo için zaman Yani. 445 00:23:28,380 --> 00:23:31,030 446 00:23:31,030 --> 00:23:37,189 Eğer sistemi gibi herhangi bir Unix kullanıyorsanız eğer öyleyse Hangi Linux BSD ama kimin BSD kullanır. 447 00:23:37,189 --> 00:23:39,730 OS X bir terminal penceresi açın ve Komut istemine R yazın. 448 00:23:39,730 --> 00:23:42,820 Eğer R stüdyo varsa veya de çalışır gibi. 449 00:23:42,820 --> 00:23:46,270 Windows kullanıcıları için, olmalıdır Başlat menüsünde R bulabilirsiniz. 450 00:23:46,270 --> 00:23:50,390 Bu bir şey aranmalıdır R x64 gibi 3 nokta ne olursa olsun. 451 00:23:50,390 --> 00:23:53,110 Oradaki açın. 452 00:23:53,110 --> 00:23:58,850 >> Yani şimdi sadece bana izin Bir terminal penceresi açın. 453 00:23:58,850 --> 00:24:02,562 Pekala, arama. 454 00:24:02,562 --> 00:24:03,520 HEDEF KİTLE: Komut Uzay 455 00:24:03,520 --> 00:24:06,675 CONNER HARRIS: Komut Uzay, teşekkür ederim. 456 00:24:06,675 --> 00:24:10,030 Ben normalde Mac'ler kullanmayın. 457 00:24:10,030 --> 00:24:13,310 Terminal, yeni bir pencere gösterecektir. 458 00:24:13,310 --> 00:24:18,120 New window ayarları ise Temel, R. Yani almalısınız 459 00:24:18,120 --> 00:24:22,230 Bir karşılama mesajı, böyle bir şey. 460 00:24:22,230 --> 00:24:31,060 >> Yani etkileşimli R kullanıyorum. 461 00:24:31,060 --> 00:24:32,719 Ayrıca tabii ki R komut dosyaları yazabilirsiniz. 462 00:24:32,719 --> 00:24:34,510 Temelde betikleri çalıştırmak aynı yolu olarak 463 00:24:34,510 --> 00:24:40,250 Eğer bilgisayar başında oturuyormuş Bir seferde her satırda bir tane yazarak. 464 00:24:40,250 --> 00:24:42,660 Yani bir vektör yaparak başlayalım. 465 00:24:42,660 --> 00:24:46,230 Bir ok C 1, 2. 466 00:24:46,230 --> 00:24:49,400 1, 2, 4. 467 00:24:49,400 --> 00:24:50,050 Tabii olur. 468 00:24:50,050 --> 00:24:51,630 Ben font boyutu daha büyük yapabilirsiniz. 469 00:24:51,630 --> 00:24:53,030 >> HEDEF KİTLE: Command-Plus 470 00:24:53,030 --> 00:24:53,650 >> CONNER HARRIS: Command-Plus. 471 00:24:53,650 --> 00:24:54,191 Komut-Plus. 472 00:24:54,191 --> 00:24:57,610 473 00:24:57,610 --> 00:25:00,370 Pekala, bu nasıl? 474 00:25:00,370 --> 00:25:00,870 İyi? 475 00:25:00,870 --> 00:25:01,551 TAMAM. 476 00:25:01,551 --> 00:25:03,300 Yani başlayalım bir vektör listesini ilan etti. 477 00:25:03,300 --> 00:25:08,710 Bir, ok, C 1,2,4 yapın. 478 00:25:08,710 --> 00:25:11,181 Biz görebilirsiniz. 479 00:25:11,181 --> 00:25:12,680 Orada dirsek endişe etmeyin. 480 00:25:12,680 --> 00:25:18,590 Yazdırmak eğer parantez so Çok uzun diziler, biz senin nerede. 481 00:25:18,590 --> 00:25:26,987 Bir örnek olurdu ben Sadece 200 aralığı 2. istiyorum. 482 00:25:26,987 --> 00:25:28,820 Ben çok basılmış ise Uzun dizi, parantez 483 00:25:28,820 --> 00:25:31,060 Sadece bu yüzden tutabilir vardır parça hangi endeksi 484 00:25:31,060 --> 00:25:33,250 Ben arıyorum eğer konum Bu görsel aracılığıyla. 485 00:25:33,250 --> 00:25:36,570 486 00:25:36,570 --> 00:25:38,280 Yani nasıl olsa, biz var. 487 00:25:38,280 --> 00:25:43,326 >> Yani ben diziler etkileşimde önce söylediğim çok güzel bir şekilde, örneğin, 488 00:25:43,326 --> 00:25:44,450 Böyle Tekli işlemleri. 489 00:25:44,450 --> 00:25:46,500 Yani ben olacak düşünüyorum Ben bir artı 1 yazarsanız olsun? 490 00:25:46,500 --> 00:25:49,630 491 00:25:49,630 --> 00:25:51,140 Evet. 492 00:25:51,140 --> 00:25:54,250 Doğru, şimdi yapacağız Bu farklı bir dizi. 493 00:25:54,250 --> 00:26:01,650 En b c 20,40, 80 diyelim. 494 00:26:01,650 --> 00:26:03,400 Ee ne düşünüyorsun Bu komut yapacak? 495 00:26:03,400 --> 00:26:09,962 496 00:26:09,962 --> 00:26:10,670 Öğeleri ekleyin. 497 00:26:10,670 --> 00:26:14,950 Ve böylece temelde ne yaptığını var. 498 00:26:14,950 --> 00:26:16,740 Yani bu oldukça uygundur. 499 00:26:16,740 --> 00:26:23,800 Yani nasıl bunu hakkında. c ise, en 10, 6 kez 1 diyelim. 500 00:26:23,800 --> 00:26:26,789 501 00:26:26,789 --> 00:26:28,830 Yani ne görmek istersiniz içerdiği, sizce? 502 00:26:28,830 --> 00:26:37,110 503 00:26:37,110 --> 00:26:38,110 Altı Böylece tüm katları. 504 00:26:38,110 --> 00:26:42,170 Şimdi, sen ne düşünüyorsun Ben bunu yaparsam ne olacak? 505 00:26:42,170 --> 00:26:48,090 Ben bu biraz daha net, c, c yapacağız. 506 00:26:48,090 --> 00:26:50,365 Peki ne olur, do you Ben bunu yaparsam, sence? 507 00:26:50,365 --> 00:26:51,488 Bir artı c. 508 00:26:51,488 --> 00:26:55,550 509 00:26:55,550 --> 00:26:56,050 [Duyulamaz] 510 00:26:56,050 --> 00:26:58,552 511 00:26:58,552 --> 00:27:02,350 >> HEDEF KİTLE: Bir hata ya da Ya İlk üç unsuru ekler. 512 00:27:02,350 --> 00:27:04,510 >> CONNER HARRIS: Oldukça değil. 513 00:27:04,510 --> 00:27:05,522 Bu ne var olduğunu. 514 00:27:05,522 --> 00:27:08,910 Ne olur bir daha kısadır Dizi, bir, sağlanıncaya var. 515 00:27:08,910 --> 00:27:13,990 Yani biz 124, 124, 124 var. 516 00:27:13,990 --> 00:27:15,710 Evet. 517 00:27:15,710 --> 00:27:18,940 Ve temelde görüntüleyebilirsiniz Bu davranış, daha önce, bir artı 1, 518 00:27:18,940 --> 00:27:22,190 Bu davranış, bir alt sınıfı olarak kısa dizi sadece sayıdır 519 00:27:22,190 --> 00:27:25,410 1, bir tek eleman dizisi olan. 520 00:27:25,410 --> 00:27:27,740 Ben sadece tüm vektör söyleyerek olmak Bunun yerine bir dizi zaman, 521 00:27:27,740 --> 00:27:30,290 çünkü o nedir r dokümantasyon genellikle yok. 522 00:27:30,290 --> 00:27:33,070 Bir kökleşmiş c alışkanlık. 523 00:27:33,070 --> 00:27:37,590 >> Tamam, ve şimdi biz bu dizi var. 524 00:27:37,590 --> 00:27:38,830 Bu yüzden bu dizi, c var. 525 00:27:38,830 --> 00:27:41,380 Biz özetini alabilirsiniz c, özet c istatistikleri. 526 00:27:41,380 --> 00:27:46,920 527 00:27:46,920 --> 00:27:48,280 Ve bu güzel. 528 00:27:48,280 --> 00:27:51,070 529 00:27:51,070 --> 00:27:52,670 Bu yüzden şimdi Biraz matris şeyler yapalım. 530 00:27:52,670 --> 00:27:56,160 En m bir matristir diyelim. 531 00:27:56,160 --> 00:27:57,780 Üçe biri tarafından oa üç yapalım. 532 00:27:57,780 --> 00:28:01,630 Yani nrows 3 eşittir ve ncols 3 eşittir. 533 00:28:01,630 --> 00:28:04,190 534 00:28:04,190 --> 00:28:10,710 Ve veriler için en sanıyor- edelim yani ne Bunu yapmak için gidiyor sizce? 535 00:28:10,710 --> 00:28:15,310 536 00:28:15,310 --> 00:28:16,580 >> Doğru, bir sonraki biri. 537 00:28:16,580 --> 00:28:17,970 Bu sat_say ve nColumn var. 538 00:28:17,970 --> 00:28:22,164 539 00:28:22,164 --> 00:28:24,580 Yani ettik ne yaptık olduğunu Üç üç matris ilan 540 00:28:24,580 --> 00:28:26,950 ve ben dokuz eleman dizisinde ilettik. 541 00:28:26,950 --> 00:28:30,530 Bütün logaritması So elemanları dokuza kadar tek. 542 00:28:30,530 --> 00:28:33,400 543 00:28:33,400 --> 00:28:37,285 Ve tüm bu değerler doldurmak array-- üzgünüm kadar? 544 00:28:37,285 --> 00:28:38,660 HEDEF KİTLE: Baz 10 günlükleri Bunlar nelerdir? 545 00:28:38,660 --> 00:28:41,284 CONNER HARRIS: Hayır, log Doğal logaritma, yani baz e. 546 00:28:41,284 --> 00:28:44,886 547 00:28:44,886 --> 00:28:47,010 Evet, isterseniz taban 10 günlük, sana olurdu bence 548 00:28:47,010 --> 00:28:51,620 log 10 bölü ne olursa olsun, oturum açmak için. 549 00:28:51,620 --> 00:28:56,750 Ve [duyulamaz] sadece bu yüzden veri , alt dizi, bu yüzden üst doldurur 550 00:28:56,750 --> 00:28:59,490 sonra sağa sola. 551 00:28:59,490 --> 00:29:06,890 Ve diğer bazı yapmak istedim Dizi, en n matrisi diyelim. 552 00:29:06,890 --> 00:29:10,317 Ben 13, 2 bilmiyorum en yapalım. 553 00:29:10,317 --> 00:29:11,900 Ya da ben daha ilginç bir şey yapacağız. 554 00:29:11,900 --> 00:29:13,770 Ben 4 2 yapacağız. 555 00:29:13,770 --> 00:29:15,780 sat_say, en, 3 diyelim eşittir. 556 00:29:15,780 --> 00:29:18,992 Ncol 4 eşittir. 557 00:29:18,992 --> 00:29:20,360 n. 558 00:29:20,360 --> 00:29:22,090 Yani biz bu var. 559 00:29:22,090 --> 00:29:26,130 >> Ve şimdi bu çarpmak istiyorsanız, biz n yüzde süreleri yüzde yapacağını 560 00:29:26,130 --> 00:29:27,680 Bu n çünkü. 561 00:29:27,680 --> 00:29:30,234 562 00:29:30,234 --> 00:29:31,400 Ve biz matris ürün var. 563 00:29:31,400 --> 00:29:33,970 564 00:29:33,970 --> 00:29:37,810 Onlar arada, nasıl gördün Ben n ilan ettiğinde, 2-4 565 00:29:37,810 --> 00:29:43,570 Vektör kadar sağlanıncaya var o n hepsini doldurdu? 566 00:29:43,570 --> 00:29:45,710 Almak istiyorsa Özdeğer ayrışma, 567 00:29:45,710 --> 00:29:46,960 Bu çok kolay bir yapabileceği bir şeydir. 568 00:29:46,960 --> 00:29:47,709 Biz öz n yapabiliriz. 569 00:29:47,709 --> 00:29:52,290 570 00:29:52,290 --> 00:29:54,600 Ve böylece bu bizim ilk bir liste ile karşılaşıyoruz. 571 00:29:54,600 --> 00:29:57,000 >> Yani eigen n iki tuşları ile bir listesidir. 572 00:29:57,000 --> 00:29:58,430 Burada bu dizidir Değerler. 573 00:29:58,430 --> 00:30:01,030 Ve vektörler, burada bu dizi olan. 574 00:30:01,030 --> 00:30:08,240 Yani ayıklamak istedim, diyelim ki, bu üçüncü sütun 575 00:30:08,240 --> 00:30:13,080 özvektörler matristen nedeniyle özvektörlerinin sütun vektörleri bulunmaktadır. 576 00:30:13,080 --> 00:30:24,400 Bu yüzden vec öz n dolar işaretini yapabilirsiniz vektörler, virgül 3'ün [inaudible]. 577 00:30:24,400 --> 00:30:29,800 578 00:30:29,800 --> 00:30:30,900 Vec. 579 00:30:30,900 --> 00:30:34,100 Tahmin edebileceğiniz gibi olmasıdır. 580 00:30:34,100 --> 00:30:39,210 >> Sonra söylemek n kat yüzde süreleri vec. 581 00:30:39,210 --> 00:30:42,610 582 00:30:42,610 --> 00:30:48,320 Yani sonuç burada kesinlikle benziyor Burada üçüncü özdeğeri aldı, 583 00:30:48,320 --> 00:30:50,390 hangi tekabül Üçüncü özvektördür. 584 00:30:50,390 --> 00:30:53,190 Sadece her şeyi çarpılır Bu özvektör, bileşen bilge, 585 00:30:53,190 --> 00:30:53,990 Özdeğer tarafından. 586 00:30:53,990 --> 00:30:57,760 Biz ne beklenir Ve bu, var Bu özdeğerleri ne çünkü. 587 00:30:57,760 --> 00:31:00,890 Burada herkes Has değil lineer cebir alındı? 588 00:31:00,890 --> 00:31:02,530 Birkaç kişi, tamam. 589 00:31:02,530 --> 00:31:04,030 Sadece biraz beynini kapatın. 590 00:31:04,030 --> 00:31:07,490 591 00:31:07,490 --> 00:31:20,720 Ve biz eigen n almak gerçekten eğer 3 kez vec dolar işareti değerleri 592 00:31:20,720 --> 00:31:21,810 iyi de aynı şeyi olsun. 593 00:31:21,810 --> 00:31:24,726 Bir satır olarak farklı biçimlendirilir Bunun yerine, bir sütun vektörün, 594 00:31:24,726 --> 00:31:25,640 ama büyük bir anlaşma. 595 00:31:25,640 --> 00:31:29,430 596 00:31:29,430 --> 00:31:35,170 Ve böylece bu temelde güzel Biz matrisler ile yapabileceğiniz şeyler, 597 00:31:35,170 --> 00:31:36,489 gösterdi listeler. 598 00:31:36,489 --> 00:31:39,030 Ben güzel göstermelidir hem de fonksiyonları hakkında şeyler. 599 00:31:39,030 --> 00:31:41,750 >> Yani say-- edelim [duyulamaz] fonksiyonu, diyelim çağrısı 600 00:31:41,750 --> 00:31:51,960 n, squared-- fonksiyon karşı işlev bu Aslında, bu gerçekten iyi değil. 601 00:31:51,960 --> 00:31:55,632 a, b, bir kare artı b. 602 00:31:55,632 --> 00:31:58,547 603 00:31:58,547 --> 00:32:00,380 Yani bir şey hakkında fonksiyonlar, daha, bir 604 00:32:00,380 --> 00:32:01,963 açık dönüş ifadeleri gerekmez. 605 00:32:01,963 --> 00:32:04,250 Yani sadece- edebilirsiniz değerlendirilen son ifade 606 00:32:04,250 --> 00:32:07,502 iade beyanı olacak, veya değer döndürdü. 607 00:32:07,502 --> 00:32:10,460 Bu durumda Yani, biz sadece değerlendirirken tek Açıklamada, bir kare artı b. 608 00:32:10,460 --> 00:32:12,043 Varsayılan dönüş değeri olacaktır. 609 00:32:12,043 --> 00:32:14,530 O koymak asla acıyor açıkça dönüş değerleri 610 00:32:14,530 --> 00:32:16,880 Eğer uğraşıyoruz özellikle çok karmaşık mantık işlevi 611 00:32:16,880 --> 00:32:17,380 akar. 612 00:32:17,380 --> 00:32:18,450 Ama onlara ihtiyacım yok. 613 00:32:18,450 --> 00:32:24,890 Yani şimdi biz fonk 5, 1 yapın, ve yapabilirsiniz Bu ne beklediğiniz temelde. 614 00:32:24,890 --> 00:32:29,146 615 00:32:29,146 --> 00:32:31,270 Yapabileceğimiz başka bir şey, biz aslında işlev b yapabilirsiniz 616 00:32:31,270 --> 00:32:33,260 1 eşittir, 5 eşittir. 617 00:32:33,260 --> 00:32:36,870 618 00:32:36,870 --> 00:32:40,770 Burada hangi sayısını belirtin Yani, hangi argümanı hangi argüman gider 619 00:32:40,770 --> 00:32:44,680 işlevinde, biz etrafında çevirebilirsiniz Bu değerler her yerde istediğimiz. 620 00:32:44,680 --> 00:32:48,405 >> HEDEF KİTLE: bir nedeni var mı b dışarı yazmak için 621 00:32:48,405 --> 00:32:52,404 Sadece kullanarak karşı eşittir sayılar ve virgül? 622 00:32:52,404 --> 00:32:54,820 CONNER HARRIS: Evet, genelde Eğer işlevleri varsa bunu 623 00:32:54,820 --> 00:32:58,540 argümanların bir sürü. 624 00:32:58,540 --> 00:33:00,690 Bu genellikle gibi olabilir bayraklar o sadece ediyorum 625 00:33:00,690 --> 00:33:03,130 ender olarak kullanmak istiyorum. 626 00:33:03,130 --> 00:33:06,740 Ve bu şekilde size Sadece-- olabilir Belirli argümanları başvurabilirsiniz 627 00:33:06,740 --> 00:33:09,110 Kullanmak istediğiniz varsayılan olmayan değerler için 628 00:33:09,110 --> 00:33:14,470 ve bir yazmak zorunda değilsiniz Bayrakların demet arkalarından yanlış eşittir. 629 00:33:14,470 --> 00:33:19,710 Yoksa yine bu yazabilirsiniz b gibi bir varsayılan değer 2 eşittir. 630 00:33:19,710 --> 00:33:26,289 Ve sonra f fonk yapabileceğini, Ben 4, 1 bu kez yapacağız. 631 00:33:26,289 --> 00:33:28,580 4 olduğu ve 17, kare artı 1, tahmin edebileceğiniz gibi. 632 00:33:28,580 --> 00:33:34,290 >> Ama aynı zamanda olabilir sadece fonksiyon 4 ile bu çağrı, 633 00:33:34,290 --> 00:33:36,970 ve ben, çünkü 18 alırsınız Ben b belirtmek gerekmez. 634 00:33:36,970 --> 00:33:38,550 Yani b 2 varsayılan değeri alır. 635 00:33:38,550 --> 00:33:41,700 636 00:33:41,700 --> 00:33:47,200 >> Tamam, şimdi sen eğer demo ile birlikte aşağıdaki, 637 00:33:47,200 --> 00:33:51,010 senin emrinde bu satırı yazın istemi ve ne kadar gelir bakın. 638 00:33:51,010 --> 00:33:52,090 Aslında, bunu yapma. 639 00:33:52,090 --> 00:33:52,590 Bu yazın. 640 00:33:52,590 --> 00:33:57,780 641 00:33:57,780 --> 00:34:01,000 Böyle bir şey almalısınız. 642 00:34:01,000 --> 00:34:04,780 Mtcars Yani veri inşa edilmiştir Bu gösteri için belirlenen 643 00:34:04,780 --> 00:34:13,550 Bu gelir Şarkı söylemeyi kes geliyor amaçları senin r dağıtımı ile varsayılan olarak. 644 00:34:13,550 --> 00:34:19,211 Bu istatistiklerine bir derleme Motor Trend dergisi bir 1974 sorunu 645 00:34:19,211 --> 00:34:20,710 farklı otomobil modelleri bir dizi. 646 00:34:20,710 --> 00:34:28,270 >> Yani galon başına mil var, cylinders-- Ne disp'e o-- beygir unutma. 647 00:34:28,270 --> 00:34:31,610 648 00:34:31,610 --> 00:34:32,420 Muhtemelen. 649 00:34:32,420 --> 00:34:36,920 Sadece Google MT arabalar ise, İlk sonuçların sonra bir 650 00:34:36,920 --> 00:34:38,730 arasında olacaktır Resmi r belgeleri 651 00:34:38,730 --> 00:34:41,080 ve açıklayacağım Tüm bu veri alanları. 652 00:34:41,080 --> 00:34:47,020 Yani ağırlık ağırlıkla bu-- ton arabanın ağırlığı. 653 00:34:47,020 --> 00:34:48,880 Q sn çeyrek mil zamanıdır. 654 00:34:48,880 --> 00:34:52,409 655 00:34:52,409 --> 00:34:55,850 Yani şimdi bazı eğlenceli şeyler yapabilirsiniz MT arabalar hakkında bir veri alanıdır. 656 00:34:55,850 --> 00:35:01,640 >> Yani biz bir şeyler yapabiliriz Satır isimleri, mt arabalar gibi. 657 00:35:01,640 --> 00:35:05,490 Ve bu tüm satırlar bir liste olduğunu araba isimleri veri seti. 658 00:35:05,490 --> 00:35:10,780 Biz colnames, mt arabalar yapabilirsiniz. 659 00:35:10,780 --> 00:35:15,500 Eğer mt arabalar yaparsanız, 2 gibi alt sayısal dizin. 660 00:35:15,500 --> 00:35:18,177 Biz dışarı ikinci sütunu olsun Bu, silindir olurdu. 661 00:35:18,177 --> 00:35:19,370 >> HEDEF KİTLE: Ne yaptın? 662 00:35:19,370 --> 00:35:21,570 >> CONNER HARRIS: Ben yazdığınız mt arabalar, parantez e 663 00:35:21,570 --> 00:35:24,180 hangi bana ikinci verdi mt araba dışarı sütun. 664 00:35:24,180 --> 00:35:34,501 665 00:35:34,501 --> 00:35:38,110 Biz bir satır istiyorsanız Veya, ben yazabilirsiniz mtcars örneğin 2 virgül. 666 00:35:38,110 --> 00:35:41,850 667 00:35:41,850 --> 00:35:46,390 Böyle Diğer yuvarlak 2 virgül. 668 00:35:46,390 --> 00:35:48,880 Ve bu satırda gider. 669 00:35:48,880 --> 00:35:54,680 Bu burada sadece size verir Bir vektör olarak sütun, sütun ancak. 670 00:35:54,680 --> 00:36:04,634 671 00:36:04,634 --> 00:36:06,425 Ben şimdi fark ben göstermek unuttum 672 00:36:06,425 --> 00:36:09,150 vektörlerin hakkında bazı serin şeyler Eğer endeksleri ile yapabilirsiniz. 673 00:36:09,150 --> 00:36:10,480 Bu yüzden bana şimdi o yapalım. 674 00:36:10,480 --> 00:36:17,130 Yani c gets-- koyarak yapalım 1 ila 10 pause-- 2 kez bu. 675 00:36:17,130 --> 00:36:21,360 Yani c sadece olacak 20 ile vektör 2. 676 00:36:21,360 --> 00:36:24,640 Ben c2, bu gibi unsurlar alabilir. 677 00:36:24,640 --> 00:36:30,942 Ben bir vektör iletebilirsiniz Bu gibi bana izin C- 678 00:36:30,942 --> 00:36:34,470 vec c gibi, c farklı bir ad kullanın. 679 00:36:34,470 --> 00:36:37,591 680 00:36:37,591 --> 00:36:39,340 Temelde, yapıyorum Bu yüzden alamadım 681 00:36:39,340 --> 00:36:45,010 Bir şekilde c arasındaki karıştı vektör oluşumu işlevi 682 00:36:45,010 --> 00:36:48,800 ve daha sonra bir değişken adı olarak c. 683 00:36:48,800 --> 00:36:53,120 Vec parantez c 4, 5, 7. 684 00:36:53,120 --> 00:36:56,540 Bu, beşinci, dördüncü beni alırsınız ve dizinin yedi elemanları. 685 00:36:56,540 --> 00:37:01,740 Ben bir olumsuz koymak, vec yapabilirsiniz Negatif 4 gibi dizin. 686 00:37:01,740 --> 00:37:06,500 İşte bu beni alacak Dördüncü unsur kaldırıldı. 687 00:37:06,500 --> 00:37:10,140 Sonra dilimleri yapmak istiyorsa, Ben 6'ya kadar VEC 2 yapabilirsiniz. 688 00:37:10,140 --> 00:37:15,480 2 kolon 6 Sadece başka bir şeydir 2 olan bir vektör, 3, 4, 5, 6. 689 00:37:15,480 --> 00:37:18,230 Bu çıkarır. 690 00:37:18,230 --> 00:37:20,770 >> Yani nasıl olsa geri mt arabalara. 691 00:37:20,770 --> 00:37:26,650 692 00:37:26,650 --> 00:37:28,450 O yüzden bazı gerilemelere yapalım. 693 00:37:28,450 --> 00:37:34,240 Model atalım gets-- diyelim doğrusal Bilmiyorum regress--. 694 00:37:34,240 --> 00:37:41,780 Öncelikle en tabii, mtcars eklemek yapalım. 695 00:37:41,780 --> 00:37:44,870 696 00:37:44,870 --> 00:38:00,010 Yani [duyulamaz] modeli lm, en geriler edelim tilde ağırlığı galon başına mil. 697 00:38:00,010 --> 00:38:03,300 Sonra bir veri çerçevesi mtcars olup. 698 00:38:03,300 --> 00:38:06,830 Yani özet modeli. 699 00:38:06,830 --> 00:38:12,900 700 00:38:12,900 --> 00:38:15,595 >> Tamam, bu biraz karmaşık görünüyor. 701 00:38:15,595 --> 00:38:19,380 Ama temelde, görme sanki biz galon başına mil ifade etmeye çalışıyorum 702 00:38:19,380 --> 00:38:23,970 ağırlığın bir lineer fonksiyonu olarak, o zaman biz burada bu çizgiyi var, 703 00:38:23,970 --> 00:38:28,730 37.28 de hangi yakaladığını. 704 00:38:28,730 --> 00:38:33,830 37,28 teorik mil olurdu sıfır ağırlığında bir arabanın galon başına. 705 00:38:33,830 --> 00:38:41,210 Sonra her ek ton, Eğer galon başına yaklaşık beş mil vurmak 706 00:38:41,210 --> 00:38:42,440 Bu kapalı. 707 00:38:42,440 --> 00:38:45,120 Bu katsayıların ikisi de Orada, standart hataları görebilirsiniz. 708 00:38:45,120 --> 00:38:47,870 Ve onlar çok vardır istatistiksel olarak anlamlı. 709 00:38:47,870 --> 00:38:55,740 >> Yani biz çok emin olabilirsiniz Negatif 10 1 e 10. 710 00:38:55,740 --> 00:38:59,510 Negatif Yani 1 kez şey 10, bir ağır araba yaparsanız o, 711 00:38:59,510 --> 00:39:01,440 o galon başına mil daha kötü olacaktır. 712 00:39:01,440 --> 00:39:04,940 713 00:39:04,940 --> 00:39:07,250 Ya da başka bir modeli test edebilirsiniz. 714 00:39:07,250 --> 00:39:09,230 Yerine gibi ağırlık bu gerileme, 715 00:39:09,230 --> 00:39:12,600 , ağırlığının günlüğüne üzerine geriler izin belki etkili ağırlık nedeniyle 716 00:39:12,600 --> 00:39:15,690 kilometre üzerinde bir türlü doğrusal değildir. 717 00:39:15,690 --> 00:39:18,540 >> Bu bize 0.7528 karesi bir r verdi. 718 00:39:18,540 --> 00:39:19,610 Yani bu deneyelim. 719 00:39:19,610 --> 00:39:21,485 Bu sefer en bir yapalım Çok farklı değişken. 720 00:39:21,485 --> 00:39:22,500 MODEL 2. 721 00:39:22,500 --> 00:39:24,800 Yani özet, MODEL 2. 722 00:39:24,800 --> 00:39:28,200 723 00:39:28,200 --> 00:39:31,390 Pekala, yine, biz Burada bizim en uygun hat var. 724 00:39:31,390 --> 00:39:36,160 Ve bu seferinde-- bu, diyor temelde her zaman 725 00:39:36,160 --> 00:39:38,090 ağırlığını artırmak e faktörü ile bir araba 726 00:39:38,090 --> 00:39:40,580 Eğer galon başına bu kadar çok mil kaybedersiniz. 727 00:39:40,580 --> 00:39:43,210 728 00:39:43,210 --> 00:39:50,326 >> Ve böylece bu sefer bizim artık standart Gerçekten önemli değil Durdur-- hatası. 729 00:39:50,326 --> 00:39:53,540 Artık standart hata olduğunu temelde sadece standart hata 730 00:39:53,540 --> 00:39:57,760 size sonra sol olduğunu trend çizgisi götürmek. 731 00:39:57,760 --> 00:40:02,805 Ve burada karesi bizim r 0.81 olduğunu biraz daha iyi olan nedir 732 00:40:02,805 --> 00:40:07,640 Biz 0.52 daha önce vardı. 733 00:40:07,640 --> 00:40:09,750 >> Ve şimdi en bir ekleyelim Bu gerileme vadeli. 734 00:40:09,750 --> 00:40:13,020 Yani galon başına mil geriler izin Her iki ağırlıkların günlüğüne 735 00:40:13,020 --> 00:40:21,130 ve, en, yapmak q mil let, çeyrek mil süresi. 736 00:40:21,130 --> 00:40:26,190 Tamam, Şeyin tamam, qsec olmalıdır. 737 00:40:26,190 --> 00:40:26,690 Qsec. 738 00:40:26,690 --> 00:40:30,630 739 00:40:30,630 --> 00:40:35,000 Actually-- üzgünüm, ne? 740 00:40:35,000 --> 00:40:37,000 Beni bu şey arayayım Başka MODEL 2 yanında. 741 00:40:37,000 --> 00:40:38,000 Beni bu Model3 diyelim. 742 00:40:38,000 --> 00:40:40,860 743 00:40:40,860 --> 00:40:42,900 Ve şimdi biz özet Model3 yapabiliriz. 744 00:40:42,900 --> 00:40:46,850 745 00:40:46,850 --> 00:40:49,100 Ve böylece yine, bu temelde Eğer beklediğiniz. 746 00:40:49,100 --> 00:40:51,750 Pozitif yolunu kesmek var. 747 00:40:51,750 --> 00:40:54,550 Artan etkili Ağırlık negatiftir. 748 00:40:54,550 --> 00:40:58,490 Ve etkili artan çeyrek mil süresi 749 00:40:58,490 --> 00:41:02,420 olumlu, ama olsa kilo daha böylece daha az. 750 00:41:02,420 --> 00:41:06,010 Şimdi sezgisel, size mantıklı olabilir Bu spor arabalar hakkında düşünmek söyleyerek. 751 00:41:06,010 --> 00:41:08,950 Çok hızlı bir ivme var, çok kısa bir çeyrek mil kez. 752 00:41:08,950 --> 00:41:13,729 Onlar da, daha fazla gaz kullanmak için gidiyoruz daha mantıklı araba gidiyor oysa 753 00:41:13,729 --> 00:41:16,020 yavaş ivme var, yüksek çeyrek mil kat, 754 00:41:16,020 --> 00:41:20,890 ve böylece ,, az gaz kullanmak galon başına mil daha yüksek. 755 00:41:20,890 --> 00:41:21,390 Büyük. 756 00:41:21,390 --> 00:41:23,431 Ve böylece şimdi zamanı Böyle bir şey çizmek. 757 00:41:23,431 --> 00:41:27,810 Yani o kadar çıplak sanıyor- izin kemikler, biz plots-- yapabiliriz 758 00:41:27,810 --> 00:41:35,280 Bu veri çerçevesini ekli çünkü before-- biz sadece araziler, ağırlık mpg yapabilirsiniz. 759 00:41:35,280 --> 00:41:38,762 760 00:41:38,762 --> 00:41:39,720 Bu biraz daha büyük yapın. 761 00:41:39,720 --> 00:41:55,050 762 00:41:55,050 --> 00:41:57,350 Orada, biz temelde var bir scatter plot, ama puan 763 00:41:57,350 --> 00:41:58,690 Bu görmek için biraz zor. 764 00:41:58,690 --> 00:42:04,860 765 00:42:04,860 --> 00:42:10,900 >> Ben hazırlıksız hatırlamıyorum sözdizimi komplo değiştirmek içindir. 766 00:42:10,900 --> 00:42:14,100 Yani bu olacak sanırım iyi bir zaman, yukarıya getirmek için 767 00:42:14,100 --> 00:42:18,000 çok güzel bir yerleşik yardım var özelliği, yardım tırnak adını çalışır. 768 00:42:18,000 --> 00:42:21,690 Biz temelde kadar getireceğim İstediğiniz her şey. 769 00:42:21,690 --> 00:42:28,010 770 00:42:28,010 --> 00:42:32,730 Ben aslında bunu düşünüyorum tip noktaları araziler için p eşittir. 771 00:42:32,730 --> 00:42:34,369 Bu hiçbir şeyi değiştirmez mi? 772 00:42:34,369 --> 00:42:35,160 Ve hayır, pek değil. 773 00:42:35,160 --> 00:42:39,160 774 00:42:39,160 --> 00:42:39,660 Pekala. 775 00:42:39,660 --> 00:42:46,760 776 00:42:46,760 --> 00:42:49,580 >> Nedense, ben bunu ne zaman için Bir süre önce benim kendi bilgisayarında, 777 00:42:49,580 --> 00:42:52,080 Tüm dağılım noktaları çok net idi. 778 00:42:52,080 --> 00:43:06,390 779 00:43:06,390 --> 00:43:13,970 Her neyse, görünür bir dağılım tür? 780 00:43:13,970 --> 00:43:15,124 Orada bir tane var. 781 00:43:15,124 --> 00:43:16,165 Bir orada birkaç birkaçıdır. 782 00:43:16,165 --> 00:43:18,860 783 00:43:18,860 --> 00:43:21,185 Sen doğru sıralama, onları görebilirsiniz? 784 00:43:21,185 --> 00:43:24,310 Bu yüzden, en uygun satır eklemek istiyorsanız Biraz çıplak burada bu arsa için 785 00:43:24,310 --> 00:43:29,290 Bones-- bana biraz daha güzel yapalım. 786 00:43:29,290 --> 00:43:38,075 Ana ağırlığı karşısında eşittir. 787 00:43:38,075 --> 00:43:46,322 788 00:43:46,322 --> 00:43:49,740 Galon başına mil. 789 00:43:49,740 --> 00:43:53,570 Yine, ne kadar yararlı görebilirsiniz İsteğe bağlı argümanlar ayrıca burada 790 00:43:53,570 --> 00:43:58,090 Bir şeyler koymak zorunda değil Klavye argümanlarla belirli düzen 791 00:43:58,090 --> 00:44:01,600 Eğer araziler, çünkü varken Bu argümanların bir sürü almak. 792 00:44:01,600 --> 00:44:07,490 >> Xlab ağırlığı, kilo, ton eşittir. 793 00:44:07,490 --> 00:44:10,091 794 00:44:10,091 --> 00:44:10,590 Pekala. 795 00:44:10,590 --> 00:44:17,340 796 00:44:17,340 --> 00:44:21,480 Tamam, evet, bu cihaz biraz sinir bozucu ediliyor. 797 00:44:21,480 --> 00:44:30,160 Ama sen, bir nevi orada görebilirsiniz tarafında bir grafik başlık var. 798 00:44:30,160 --> 00:44:35,260 Burada orada- alt fazla Burada eksen etiketleri vardır. 799 00:44:35,260 --> 00:44:37,700 Ben hazırlıksız hatırlamıyorum Ne komutları ars-- 800 00:44:37,700 --> 00:44:41,000 fonksiyonları artırmak için ne Bu etiket ve başlıklar büyüklüğü, 801 00:44:41,000 --> 00:44:43,110 ama oradalar. 802 00:44:43,110 --> 00:44:46,625 >> Ve böylece biz isterseniz en uygun satır eklemek, 803 00:44:46,625 --> 00:44:49,250 Biz I sanki şey gibi yapabileceği var sözdizimi burada yazılı. 804 00:44:49,250 --> 00:44:52,280 805 00:44:52,280 --> 00:45:11,130 Yani biz sadece modeli eklemek hatırlıyorum MPG, ağırlık, mtcars oldu. 806 00:45:11,130 --> 00:45:16,470 Eğer öyleyse Ve ben bir en uygun eklemek istedim çizgi, ben a, b hattı modeli yapabilirdi. 807 00:45:16,470 --> 00:45:18,556 Ve boom, biz en uygun çizgi var. 808 00:45:18,556 --> 00:45:19,970 Tekrar görmek için biraz zor. 809 00:45:19,970 --> 00:45:22,178 Ben oldukça üzgünüm Teknolojik zorluklar. 810 00:45:22,178 --> 00:45:25,230 Ama temelde çalışır üst alt soldan sağa doğru. 811 00:45:25,230 --> 00:45:27,550 >> Ve ölçek olsaydı Daha büyük, sen görebiliyordu 812 00:45:27,550 --> 00:45:31,260 kesişim olduğunu ne yapabilirsiniz özet istatistiklerden bulmak 813 00:45:31,260 --> 00:45:34,790 özet modelini yazarsanız. 814 00:45:34,790 --> 00:45:40,130 Tamam, bu yüzden herkes alır umuyoruz Bir anlamda bir şey nasıl 815 00:45:40,130 --> 00:45:42,030 R o için neyin iyi olduğunu. 816 00:45:42,030 --> 00:45:45,520 Sen daha çok güzel araziler yapabilirdiniz Kendi zamanında bu, isterseniz. 817 00:45:45,520 --> 00:45:50,100 818 00:45:50,100 --> 00:45:53,950 >> Yabancı fonksiyon arayüzü yüzden. 819 00:45:53,950 --> 00:46:00,330 Bu genellikle değildir şeydir tanıtım derslerde kaplı 820 00:46:00,330 --> 00:46:03,560 r veya tanıtım şey. 821 00:46:03,560 --> 00:46:05,584 İhtiyacınız olacak olası değil. 822 00:46:05,584 --> 00:46:08,000 Ancak, ben de faydalı bulduğu Geçmişte kendi projeleri. 823 00:46:08,000 --> 00:46:10,984 Ve hiç iyi orada Online bunun için öğretici. 824 00:46:10,984 --> 00:46:12,900 Ben sadece gidiyorum Bu size tüm acele 825 00:46:12,900 --> 00:46:16,606 ve daha sonra terk etmek özgürsünüz. 826 00:46:16,606 --> 00:46:18,480 Ve böylece yabancı fonksiyon arayüzü ne olduğunu 827 00:46:18,480 --> 00:46:23,130 Eğer görmek için dışarı çağırmak için kullanabilirsiniz Bir R. dahili fonksiyonlar, 828 00:46:23,130 --> 00:46:29,850 C. R'ın aritmetik adildir R inşa edilmiştir C 64-bit kayan noktalı aritmetik, 829 00:46:29,850 --> 00:46:32,852 hangi çift [inaudible] türüdür. 830 00:46:32,852 --> 00:46:35,060 Ve yapmak isteyebilirsiniz nedenlerle bir grup için bu. 831 00:46:35,060 --> 00:46:39,250 İlk olarak, R, bu kadar yorumlanır değil makine koduna aşağı derlenmiş. 832 00:46:39,250 --> 00:46:42,170 Yani yeniden edebilirsiniz olsun, sonra C ve iç döngüler 833 00:46:42,170 --> 00:46:45,920 R. benzeri kullanılarak avantajı biraz daha rahat C'den var 834 00:46:45,920 --> 00:46:48,899 Daha iyi grafiklerini vardır tesisleri ve etajer. 835 00:46:48,899 --> 00:46:51,690 Ve hala mümkün olurken olsun İç döngüler üzerinden en yüksek hız, 836 00:46:51,690 --> 00:46:53,650 hangi gerçekten ihtiyacınız yerdir. 837 00:46:53,650 --> 00:46:56,330 >> Mevcut C kütüphaneleri tekrar kullanımı, Bu da önemlidir. 838 00:46:56,330 --> 00:47:00,320 Sizin gibi bazı C kütüphanesi varsa, Ben, Fourier dönüşümleri, bilmiyorum 839 00:47:00,320 --> 00:47:05,190 ya da çok Arkeen istatistik prosedür kullanılır 840 00:47:05,190 --> 00:47:09,470 yüksek enerji astrofizik alanında falan, bilmiyorum. 841 00:47:09,470 --> 00:47:13,058 Yüksek enerjili astrofizik Hatta bir düşünce değil, sanırım. 842 00:47:13,058 --> 00:47:16,480 Ama kalmadan bunu yapabilir Bunlardan bir yerli R portu yazmak için. 843 00:47:16,480 --> 00:47:22,725 Ve Şeyin ve yine sizin gibi eğer R varsayılan kütüphanelerinin çoğunda bakmak, 844 00:47:22,725 --> 00:47:25,600 internals üzerine, internals vardır yabancı işlevi kullanmak için gidiyoruz 845 00:47:25,600 --> 00:47:26,724 Çok yoğun arayüzü. 846 00:47:26,724 --> 00:47:31,630 Onlar Fourier gibi şeyler olacak dönüşümleri veya korelasyon hesaplama 847 00:47:31,630 --> 00:47:34,890 katsayıları C ile yazılmış ve onlar olacak Sadece çevrelerindeki R sarýcýlarý var. 848 00:47:34,890 --> 00:47:38,230 Arabirimi olan bir biraz zor. bence 849 00:47:38,230 --> 00:47:43,750 kendi zorluk abartılı bulacağınız talimatlar çok. 850 00:47:43,750 --> 00:47:46,200 Ama yine de, bu biraz kafa karıştırıcı. 851 00:47:46,200 --> 00:47:48,650 Ve ben mümkün olmamıştır Bunun için iyi bir öğretici bulmak, 852 00:47:48,650 --> 00:47:51,980 Bu yüzden şu anda öyle. 853 00:47:51,980 --> 00:47:55,360 Yine, bütün bu segmenti daha sonra başvurmak üzere daha fazladır. 854 00:47:55,360 --> 00:47:57,687 Kopyalama dert etmeyin Şu anda aşağı her şeyi. 855 00:47:57,687 --> 00:48:00,020 Aşağıdaki talimatlar Yani Unix benzeri sistemler için vardır, 856 00:48:00,020 --> 00:48:05,150 Linux, BSD, OS X bilmiyorum Bu Windows üzerinde çalışır, nasıl 857 00:48:05,150 --> 00:48:08,280 ama sadece yapmıyoruz, lütfen sizin Windows üzerinde son projesi. 858 00:48:08,280 --> 00:48:10,790 859 00:48:10,790 --> 00:48:12,460 Gerçekten istemiyorum. 860 00:48:12,460 --> 00:48:14,770 Unix çok daha iyi kümesidir gündelik programlama için. 861 00:48:14,770 --> 00:48:19,320 862 00:48:19,320 --> 00:48:21,390 Yani, temelde yabancı fonksiyon arayüzü. 863 00:48:21,390 --> 00:48:24,420 Bir C yazmak istiyorsanız R ile kullanım için fonksiyon, 864 00:48:24,420 --> 00:48:27,250 tüm almak zorundadır işaretçileri olarak argümanlar. 865 00:48:27,250 --> 00:48:30,666 >> Yani tek değerler için, bu bu değere işaret demektir. 866 00:48:30,666 --> 00:48:33,040 Diziler için bu bir göstericidir ilk öğe, hangi 867 00:48:33,040 --> 00:48:36,750 Dizi isimleri aslında ne demek olduğunu. 868 00:48:36,750 --> 00:48:40,140 Yine, bu olması gereken bir şeydir Oldukça tamamen p beş ayarladıktan sonra aşağı. 869 00:48:40,140 --> 00:48:43,334 Dizi isimleri sadece noktalar şunlardır ilk elemana, 870 00:48:43,334 --> 00:48:44,750 Kayan nokta tipi çift olduğunu. 871 00:48:44,750 --> 00:48:47,310 Ve işlevi geçersiz dönmek zorundadır. 872 00:48:47,310 --> 00:48:50,810 It can tek yolu gerçekte ne anlatmak R 873 00:48:50,810 --> 00:48:54,410 R verdi bellek değiştirerek gereğidir bunun dış fonksiyonu sayesinde 874 00:48:54,410 --> 00:48:54,910 arayüz. 875 00:48:54,910 --> 00:48:58,180 876 00:48:58,180 --> 00:49:00,127 >> Yani bu yazdım Burada örnek, bu 877 00:49:00,127 --> 00:49:02,460 kullanımını hesaplayan bir fonksiyon İki vektör nokta ürünü. 878 00:49:02,460 --> 00:49:05,060 Bu, iki argüman, vec1, vec2 alır bu vektörler kendilerini, 879 00:49:05,060 --> 00:49:06,934 ve n, burada bir uzunluğu, yine nedeniyle, 880 00:49:06,934 --> 00:49:12,630 R öğrenmek için [duyulamaz] inşa etti vektörlerin uzunluğu, ancak C yok. 881 00:49:12,630 --> 00:49:16,182 C, vektörler, bir keyfi bellek ayrılmış yığın. 882 00:49:16,182 --> 00:49:17,890 Yani yol yapabilirsiniz nokta ürünlerini hesaplamak 883 00:49:17,890 --> 00:49:23,470 Sadece parametre bu yola sıfıra sonra yinelemenize 884 00:49:23,470 --> 00:49:28,760 1 için, n, yıldıza n boyuna bir işaretçi var, 885 00:49:28,760 --> 00:49:32,929 Sadece bir şey eklemek bunu parametre. 886 00:49:32,929 --> 00:49:34,970 Ve bu iyi bir uygulama olabilir Yapmanız gidiyoruz eğer 887 00:49:34,970 --> 00:49:37,270 Bu iki ayrı C fonksiyonları yazmak için. 888 00:49:37,270 --> 00:49:41,970 Bunlardan biri Bunlardan biri sadece has-- argümanları ve türlerini alır 889 00:49:41,970 --> 00:49:43,970 bunlar genellikle C olacağını 890 00:49:43,970 --> 00:49:47,780 >> Yani bir dizi alır işaretçileri olarak argümanlar. 891 00:49:47,780 --> 00:49:57,090 Ama n gibi tek değerli argümanlar, Sadece, sureti değerleri olarak alır 892 00:49:57,090 --> 00:49:57,917 işaretçiler olmadan. 893 00:49:57,917 --> 00:49:59,750 Ve o zaman değil [Duyulamaz] dışarı işaretçi. 894 00:49:59,750 --> 00:50:01,290 Ve sonra olabilir Farklı bir temelde, 895 00:50:01,290 --> 00:50:03,623 sarıcı işlevi temelde gereksinimleri kolları 896 00:50:03,623 --> 00:50:07,740 Dış fonksiyonunun Senin için arabirim. 897 00:50:07,740 --> 00:50:11,840 >> Eğer R diyoruz yolu bir kez olan Eğer, senin işlevi C ile yazılmış olması 898 00:50:11,840 --> 00:50:17,770 Eğer R cmd shlib, R tipi Komut paylaşımlı kütüphane, 899 00:50:17,770 --> 00:50:20,110 foo nokta c ya da her neyse dosya adıdır 900 00:50:20,110 --> 00:50:23,020 ve OS R terminalinde değil kabuk. 901 00:50:23,020 --> 00:50:25,200 Ve bu bir yaratacak foo denilen kütüphane yani nokta. 902 00:50:25,200 --> 00:50:28,180 Ve sonra onu yükleyebilirsiniz Bizim komut dosyası veya etkileşimli 903 00:50:28,180 --> 00:50:32,310 Komut dyn nokta yük. 904 00:50:32,310 --> 00:50:35,720 Sonra bir işlevi var R nokta c çağırdı. 905 00:50:35,720 --> 00:50:39,310 >> Bu olan argüman alır C işlevin ilk isim 906 00:50:39,310 --> 00:50:40,970 Aramak istediğiniz söyledi. 907 00:50:40,970 --> 00:50:43,920 Sonra tüm parametreler Bu işleve, 908 00:50:43,920 --> 00:50:45,420 onlar doğru sırayla olması gerekir. 909 00:50:45,420 --> 00:50:48,580 Bu tip kullanmak zorunda zorlama fonksiyonları tamsayı olarak olarak 910 00:50:48,580 --> 00:50:52,050 çift, karakter ve mantıksal olarak. 911 00:50:52,050 --> 00:50:54,710 Ve o zaman geri döndüğünde Yine sadece bir liste, 912 00:50:54,710 --> 00:50:57,550 ilişkili bir dizi parametre adları ve değerleri 913 00:50:57,550 --> 00:51:00,950 sonra işlev tükendi. 914 00:51:00,950 --> 00:51:08,520 >> Nokta eşya, çünkü, bu durumda So argümanlar n üzerinden, vec2 vec1 ve n int. 915 00:51:08,520 --> 00:51:11,980 Biz nokta eşya var c nokta için, işlevin adı 916 00:51:11,980 --> 00:51:16,250 Biz vec1, vec2, tip zorlamak için, diyorlar. 917 00:51:16,250 --> 00:51:20,060 Her iki vektör uzunluğu Ben sadece vec1 keyfi seçti. 918 00:51:20,060 --> 00:51:25,479 Bu s demek daha sağlam olurdu vec1 tamsayı dakika uzunluğu, uzunluk vec2. 919 00:51:25,479 --> 00:51:27,520 Sonra sadece çift sıfır olarak, biz gerçekten yok çünkü 920 00:51:27,520 --> 00:51:29,644 gider umrumda parametresi dışarı biz çünkü 921 00:51:29,644 --> 00:51:32,270 Bunu ayarlamak zaten sıfıra. 922 00:51:32,270 --> 00:51:37,560 >> Ve sonra sonuçları olacak temelde büyük ilişkili dizi 923 00:51:37,560 --> 00:51:42,090 vec1, vec2 ne olursa olsun ne olursa olsun olduğunu. 924 00:51:42,090 --> 00:51:44,330 Ama biz ilgileniyoruz dışarı, bu yüzden biz çıkabiliriz. 925 00:51:44,330 --> 00:51:47,780 Bu, yine, çok oyuncak örneğidir Yabancı fonksiyon arayüzü. 926 00:51:47,780 --> 00:51:54,160 Ama nokta hesaplamak zorunda döngülerinde büyük vektör ürünleri, 927 00:51:54,160 --> 00:51:56,960 veya yapmanız gereken ise bir döngü içinde başka bir şey, 928 00:51:56,960 --> 00:51:59,850 ve Ar güvenmek istemiyorum, hangi yükü biraz var 929 00:51:59,850 --> 00:52:02,830 yerleşik, bu yararlı olabilir. 930 00:52:02,830 --> 00:52:05,870 >> Yine, bu genellikle değil R. tanıtım konu 931 00:52:05,870 --> 00:52:08,571 Çok iyi belgelenmiş değil. 932 00:52:08,571 --> 00:52:11,070 Ben sırf o dahil ediyorum Ben geçmişte yararlı buldum. 933 00:52:11,070 --> 00:52:13,654 Yani, kötü uygulamalar. 934 00:52:13,654 --> 00:52:15,820 Ben bir var ki söz işlevi döngü. 935 00:52:15,820 --> 00:52:21,150 Genellikle de, olmamalıdır dil, kullanmayın. 936 00:52:21,150 --> 00:52:26,100 R yineleme uygulayan nasıl dayanarak içten, yavaş olabilir. 937 00:52:26,100 --> 00:52:28,540 Onlar sadece, aynı zamanda çirkin görünüyor. 938 00:52:28,540 --> 00:52:32,410 >> R yani, çok güzel vektörleri kolları çoğu zaman bunu kullanmak gerekmez. 939 00:52:32,410 --> 00:52:35,050 940 00:52:35,050 --> 00:52:38,900 Sonra genellikle can genellikle vektör yerine 941 00:52:38,900 --> 00:52:42,490 yüksek olarak adlandırılan bu işlevlerle Sipariş fonksiyonları, Harita, azaltın 942 00:52:42,490 --> 00:52:44,404 Bul veya Filtre. 943 00:52:44,404 --> 00:52:46,320 Ben sadece bazı vereceğiz Ne bu örnekleri yok. 944 00:52:46,320 --> 00:52:49,957 Harita yüksek dereceli fonksiyonu çünkü bir argüman olarak bir işlev alır. 945 00:52:49,957 --> 00:52:52,290 Bunu bir işlev verebilir Yani, bunu bir dizi verebilir, 946 00:52:52,290 --> 00:52:54,640 ve işlevi geçerli olacaktır dizinin her elemanına 947 00:52:54,640 --> 00:52:55,681 ve yeni bir dizi döndürür. 948 00:52:55,681 --> 00:52:58,035 949 00:52:58,035 --> 00:53:00,160 Temelde vermek azaltın bir dizi, bunu ver 950 00:53:00,160 --> 00:53:02,930 İki argüman alır bir işlev. 951 00:53:02,930 --> 00:53:07,100 İlk, fonksiyon geçerli olacaktır Bazı başlangıç ​​değeri ile ilk argüman. 952 00:53:07,100 --> 00:53:09,440 Sonra ikinci o sonuca. 953 00:53:09,440 --> 00:53:12,590 Sonra üçüncü bu sonuca, Daha sonra dördüncü o sonuca. 954 00:53:12,590 --> 00:53:14,870 Sonuna kadar geldiğinde Ve sonra geri döner. 955 00:53:14,870 --> 00:53:17,620 Yani, örneğin, isterseniz tüm unsurların toplamını hesaplamak 956 00:53:17,620 --> 00:53:23,240 Bir dizideki, sen diyebilirsiniz daha azaltmak [duyulamaz] ile bir ek azaltmak 957 00:53:23,240 --> 00:53:26,620 fonksiyon, fonksiyon gibi a, b, a artı b döndürür. 958 00:53:26,620 --> 00:53:28,960 Sonra 0 değeri başlar. 959 00:53:28,960 --> 00:53:32,950 >> Ve bütün bunlar, bunları bulabilirsiniz R belgelerinde açıklanan, 960 00:53:32,950 --> 00:53:35,720 Herhangi bir ders kitabında üzerinde fonksiyonel programlama. 961 00:53:35,720 --> 00:53:38,330 Bu sınıfı da var denilen fonksiyonlar fonksiyonları uygulamak, 962 00:53:38,330 --> 00:53:42,807 ki ben onlar konum Yapma-- biraz zor, açıklamak 963 00:53:42,807 --> 00:53:45,640 ama eğer bakarsanız [duyulamaz] Ben başında anılan bu rezervasyonu 964 00:53:45,640 --> 00:53:48,615 O oldukça iyi bunları açıklıyor R programlama onun eki. 965 00:53:48,615 --> 00:53:51,599 966 00:53:51,599 --> 00:53:53,390 Uygulamalarımız hakkında daha fazla, vektörleri ekleme. 967 00:53:53,390 --> 00:53:57,570 968 00:53:57,570 --> 00:53:58,070 Evet? 969 00:53:58,070 --> 00:54:01,651 970 00:54:01,651 --> 00:54:02,900 Bunu düzeltmek gerekir sanırım. 971 00:54:02,900 --> 00:54:07,450 Ilk satırda, vec ok, O ok olmamalı. 972 00:54:07,450 --> 00:54:10,920 Sen, bir vektör atayabilirsiniz Yine, tarafından uzunluğu artı 1 almak 973 00:54:10,920 --> 00:54:13,220 ve bazı değer atama. 974 00:54:13,220 --> 00:54:18,970 Bu vektör uzatmak veya olacak vec eşittir c, vec newValue yapabilirsiniz. 975 00:54:18,970 --> 00:54:21,540 Yine, eğer birlikte C kullanmak Bir vektör olarak tek argüman, 976 00:54:21,540 --> 00:54:23,300 Ortaya çıkan hiyerarşi basık olur. 977 00:54:23,300 --> 00:54:27,160 Yani sadece bir vektör alırsınız Bu 1 ile genişletilmiş oluyor. 978 00:54:27,160 --> 00:54:30,410 Bunu asla. 979 00:54:30,410 --> 00:54:33,330 >> Nedeni sizi Bu bu yapmamalısınız. 980 00:54:33,330 --> 00:54:37,430 Bir vektör tahsis, bunu o belleğin belirli bir yığın verir. 981 00:54:37,430 --> 00:54:40,680 O vektör boyutunu artırırsanız, bu vektörü tahsis vardır 982 00:54:40,680 --> 00:54:43,820 başka bir yer. 983 00:54:43,820 --> 00:54:46,980 Ve böylece yeniden tahsis oldukça pahalıdır. 984 00:54:46,980 --> 00:54:50,530 Ben nasıl detaya gitmeyecek Bellek ayırıcılarına uygulanmaktadır 985 00:54:50,530 --> 00:54:57,280 İşletim sistemi seviyesinde, ama bu çok zaman alır 986 00:54:57,280 --> 00:54:58,962 yeni bir bellek yığın bulmak için. 987 00:54:58,962 --> 00:55:00,920 Ve ayrıca, sen eğer yeniden dağıtılması çok ve çok sayıda 988 00:55:00,920 --> 00:55:03,500 arasında giderek büyük topakları, sen sonuna kadar 989 00:55:03,500 --> 00:55:06,420 denilen şeyle bellek parçalanma, 990 00:55:06,420 --> 00:55:09,390 Müsait bellek küçük bloklar sürü ayrılmıştır 991 00:55:09,390 --> 00:55:11,500 bakış bellek ayırıcılarına noktasında. 992 00:55:11,500 --> 00:55:15,340 Ve daha da zorlaşmaktadır diğer şeyler için bellek bulmak için. 993 00:55:15,340 --> 00:55:19,455 Bunun yerine, bunu yapmak gerekirse, eğer Eğer bir ucundan bir vektör büyümek için ihtiyaç 994 00:55:19,455 --> 00:55:24,240 yanındaki, buna ekleme yerine, Sürekli, bunu önceden tahsis etmelidir. 995 00:55:24,240 --> 00:55:29,310 Vec ok, vektör uzunluğu 1000, ya da her neyse eşittir. 996 00:55:29,310 --> 00:55:33,200 >> Ve sonra sadece atayabilirsiniz Vektörün değerleri biri 997 00:55:33,200 --> 00:55:36,000 Eğer bir kez tahsis ettik sonra bir kez. 998 00:55:36,000 --> 00:55:40,140 Ben, yine, bu içine benim yaz iş koştu ne zaman NRA farkı yazıyordu 999 00:55:40,140 --> 00:55:42,120 denklem çözücü. 1000 00:55:42,120 --> 00:55:43,180 Sayısal sembolik değil. 1001 00:55:43,180 --> 00:55:49,290 Fikir bir kez olduğunu Çözümünüz için tek değer, 1002 00:55:49,290 --> 00:55:51,240 Eğer bir sonraki hesaplamak için kullanabilirsiniz. 1003 00:55:51,240 --> 00:55:53,700 Naif Yani benim doğal eğim, Tamam söylemek oldu 1004 00:55:53,700 --> 00:55:56,930 bu yüzden bir vektör ile başlayacağız Bu önemli bir değerdir. 1005 00:55:56,930 --> 00:56:01,260 Sonraki değerinden hesapla O, benim çözüm vektörü üzerine gider 1006 00:56:01,260 --> 00:56:02,630 ve o ekleyin. 1007 00:56:02,630 --> 00:56:05,290 >> Başka bir şey oluşturun, o ekleyin. 1008 00:56:05,290 --> 00:56:08,120 O çok, çok yavaş gitti. 1009 00:56:08,120 --> 00:56:11,540 Ve ben bu fark bir kez ve benim sistem değişti 1010 00:56:11,540 --> 00:56:16,020 Bu vektör için ekleme gelen 10.000 100.000 kez gibi, 1011 00:56:16,020 --> 00:56:18,910 Sadece bir vektör ön tahsis ve sadece bu ile çalışıyor. 1012 00:56:18,910 --> 00:56:22,100 Ben 1000'den fazla kat hız kalktı. 1013 00:56:22,100 --> 00:56:26,280 Yani bu çok yaygın olduğunu R programlama için tuzak. 1014 00:56:26,280 --> 00:56:31,560 Bir vektör kurmak gerekiyorsa parça parça, onu ön ayrılamadı. 1015 00:56:31,560 --> 00:56:35,360 1016 00:56:35,360 --> 00:56:40,240 >> Bu up-- başka ortak gezi benim son olduğunu slayt, hata işleme değil Merak etme bunu. 1017 00:56:40,240 --> 00:56:42,890 R, samimi olmak gerekirse, değil Gerçekten çok iyi yapıyoruz. 1018 00:56:42,890 --> 00:56:45,010 Orada bir sürü çıkabilen sorunlar. 1019 00:56:45,010 --> 00:56:48,360 Örneğin, bir dizi alırsanız veya bir işlevin dışında bir vektör 1020 00:56:48,360 --> 00:56:52,377 Tek bekliyorduk o değer tersi gelen, ya da, 1021 00:56:52,377 --> 00:56:55,460 ve bir fonksiyonun içine geçmek Eğer tek bir değer bekliyor yazdı, 1022 00:56:55,460 --> 00:56:57,270 bu bir sorun olabilir. 1023 00:56:57,270 --> 00:57:01,440 >> Belirli işlevler gibi, diyelim ki, null döndürür 1024 00:57:01,440 --> 00:57:05,560 Bir okuma Bir listede varolmayan tuşuna basın. 1025 00:57:05,560 --> 00:57:08,527 Ama boş C gibi değil Nerede okumak çalışırsanız 1026 00:57:08,527 --> 00:57:11,360 Eski bir işaretçi, [inaudible] işaretçi null, sadece hataları seg 1027 00:57:11,360 --> 00:57:14,109 ve sizin hata ayıklayıcı iseniz o tam olarak nerede olduğunuzu söyler. 1028 00:57:14,109 --> 00:57:17,080 1029 00:57:17,080 --> 00:57:20,772 Fonksiyonları olacak sanıyor- Bunun yerine, boş öngörülemeyen şeyler yapacak 1030 00:57:20,772 --> 00:57:21,730 onlar teslim null adlı iseniz. 1031 00:57:21,730 --> 00:57:24,575 Eğer maksimum null adlı teslim ediyorsanız gibi, size negatif sonsuz vereceğim. 1032 00:57:24,575 --> 00:57:27,230 1033 00:57:27,230 --> 00:57:28,190 Ve böylece, evet. 1034 00:57:28,190 --> 00:57:30,880 1035 00:57:30,880 --> 00:57:32,630 Ve böylece bu oldu Bana vardı bir zamanlar ne zaman 1036 00:57:32,630 --> 00:57:34,771 alanları bir demet değişti Benim liste yapısında 1037 00:57:34,771 --> 00:57:37,520 Bir kez başka bir yerde onları değiştirmeden ben onlardan okuyordu. 1038 00:57:37,520 --> 00:57:40,670 Ve sonra rastgele her türlü var sonsuzluk sonuçları kadar kırpma 1039 00:57:40,670 --> 00:57:43,080 ve ben hiçbir fikrim nereden geldiğini. 1040 00:57:43,080 --> 00:57:45,310 Ve ne yazık ki, orada hiçbir gerçek R katı mod 1041 00:57:45,310 --> 00:57:48,940 nereye şey olmadığını söyleyebilirim Bu bir hata olabilir gibi görünüyor 1042 00:57:48,940 --> 00:57:51,960 Ben olabilir bu yüzden sadece orada durmak disiplinli ve düzeltmek. 1043 00:57:51,960 --> 00:57:55,282 1044 00:57:55,282 --> 00:57:57,240 Ancak, bir şey var Dur değilse denir. 1045 00:57:57,240 --> 00:58:00,480 Bu, C'nin assert eşdeğerdir Bu konuda konuştum eğer. 1046 00:58:00,480 --> 00:58:02,690 C iddia sanmıyorum Bir ders konudur, 1047 00:58:02,690 --> 00:58:06,370 ancak bölüm başkanı Bunun üzerine gitmiş olabilir. 1048 00:58:06,370 --> 00:58:10,393 Temelde herhangi sürer değilse ve durdurma yüklem, bu yüzden herhangi bir açıklamada bu 1049 00:58:10,393 --> 00:58:11,824 doğru veya yanlış olabilir. 1050 00:58:11,824 --> 00:58:13,490 Yanlış Ve eğer, onun programı durdurur. 1051 00:58:13,490 --> 00:58:18,260 Seni hat tam olarak ne anlatır vardı ve ne durumda başarısız oldu. 1052 00:58:18,260 --> 00:58:21,910 >> Ve bu çok yararlı, örneğin, aklı denetimi, fonksiyon girişleri. 1053 00:58:21,910 --> 00:58:25,110 Eğer bir işlev varsa Yani ve, diyelim ki, bekliyoruz 1054 00:58:25,110 --> 00:58:29,640 Bana bir tarih vermek gerekiyorsa, ben istiyorum tarihleri ​​uzunluğu 1 sadece bir vektör 1055 00:58:29,640 --> 00:58:31,735 ve bir yerde, 1 ile 31 arasında yer almaktadır. 1056 00:58:31,735 --> 00:58:34,420 1057 00:58:34,420 --> 00:58:36,170 Ve eğer, ben biliyorum bir şeyler ters gitti. 1058 00:58:36,170 --> 00:58:40,280 Ve ben bundan önce orada durdurmak için tercih koduyla etkileri üzerine rastgele vuruş vardır 1059 00:58:40,280 --> 00:58:44,190 zor olduğunu aracılığıyla izlemek için. 1060 00:58:44,190 --> 00:58:47,170 Böylece olası biri durdurmak için kullanmak değilse. 1061 00:58:47,170 --> 00:58:48,660 >> Tamam, neyse. 1062 00:58:48,660 --> 00:58:49,690 Yani sonu. 1063 00:58:49,690 --> 00:58:51,290 Geldiğiniz için çok teşekkür ederim. 1064 00:58:51,290 --> 00:58:53,710 Ben bu bir rütbe amatör duyuyorum. 1065 00:58:53,710 --> 00:58:57,270 Çok üzgünüm sıkıldım eğer ya karışık ya da ne var. 1066 00:58:57,270 --> 00:59:01,670 Ben e-posta ile soru almak için mutluyum connorharris@college.harvard.edu~~pobj at. 1067 00:59:01,670 --> 00:59:07,230 Bu herkes için de geçerlidir Bu daha sonra canlı veya izlerken. 1068 00:59:07,230 --> 00:59:10,190 Ayrıca, ama ben değilim TF, ben de çok duyuyorum 1069 00:59:10,190 --> 00:59:13,900 resmi olmayan bir şekilde hizmet etmek isteyen bu herkes için danışman 1070 00:59:13,900 --> 00:59:15,460 son projesinde R kullanarak. 1071 00:59:15,460 --> 00:59:19,900 >> Bunu isterseniz, Daha sonra sadece TF konuşmak 1072 00:59:19,900 --> 00:59:23,750 ve o zaman bana bir e-posta yazmak Ne üzerinde çalışıyoruz biliyorum 1073 00:59:23,750 --> 00:59:26,680 ve bu yüzden toplantıyı kurabilirsiniz Sizinle kere isterseniz. 1074 00:59:26,680 --> 00:59:27,990 Yani yine, çok teşekkür ederim. 1075 00:59:27,990 --> 00:59:28,960 Ben bunu zevk umuyoruz. 1076 00:59:28,960 --> 00:59:29,450 >> HEDEF KİTLE: [duyulamaz]. 1077 00:59:29,450 --> 00:59:30,617 >> CONNER HARRIS: Tabii ki. 1078 00:59:30,617 --> 00:59:34,910 >> HEDEF KİTLE: Bir projenin ne tür CS öğrenci için R kullanmak? 1079 00:59:34,910 --> 00:59:37,427 1080 00:59:37,427 --> 00:59:40,510 CONNER HARRIS: Yapmanız değil eğer öyleyse tamamen veri madenciliği var bir şey, 1081 00:59:40,510 --> 00:59:43,790 örneğin, orada pek çok şey vardır 1082 00:59:43,790 --> 00:59:46,692 Eğer veri ile birlikte yapabilirdi madencilik ve makine öğrenme. 1083 00:59:46,692 --> 00:59:48,900 Sizin için R kullanmak isteyebilirsiniz bir şeyin bir parçası. 1084 00:59:48,900 --> 00:59:52,022 Ben, aslında, örnek getirdi Eğer bir web sitesi yazıyorsanız if 1085 00:59:52,022 --> 00:59:54,730 ve otomatikleştirilmiş çalıştırmak istediğiniz Sunucunuzun istatistiksel analiz 1086 00:59:54,730 --> 00:59:57,990 Belirli bir süre her gün günlükleri, işte bir şey olabilir 1087 00:59:57,990 --> 01:00:01,260 Sadece bir kısa yapmak çok kolay Eğer zamanlayabilirsiniz R komut 1088 01:00:01,260 --> 01:00:04,200 Örneğin, her gece çalıştırın. 1089 01:00:04,200 --> 01:00:06,550 >> Ve ben, eğer eminim Herhangi bir nedenle orada olurdu var 1090 01:00:06,550 --> 01:00:11,520 istatistik veya grafik yetenekleri istiyorum ve yerine otomatik bu çalıştırmak 1091 01:00:11,520 --> 01:00:13,790 bir etkileşim zorunda Excel'de şeyler, 1092 01:00:13,790 --> 01:00:16,750 örneğin, söz konusu bir şey için R kullanmak isteyebilirsiniz. 1093 01:00:16,750 --> 01:00:21,190 Yani ben önce herhangi bir soru daha mı bırakacaksın? 1094 01:00:21,190 --> 01:00:21,690 Hayır mı? 1095 01:00:21,690 --> 01:00:24,960 Pekala, tekrar teşekkür Geldiğiniz için çok teşekkür ederim. 1096 01:00:24,960 --> 01:00:29,417