[संगीत खेल] डस्टिन ट्रॅन: हाय। मेरा नाम डस्टिन। इसलिए मैं पेश हो जाएगा आर में डेटा विश्लेषण खुद के बारे में बस एक छोटा सा। मैं वर्तमान में एक स्नातक छात्र हूँ इंजीनियरिंग और एप्लाइड साइंसेज। मैं के एक चौराहे का अध्ययन मशीन सीखने और आँकड़े इसलिए अनुसंधान में डेटा विश्लेषण है करने के लिए वास्तव में मौलिक क्या मैं एक दैनिक आधार पर करते हैं। और आर विशेष रूप से है डेटा विश्लेषण के लिए अच्छा यह प्रोटोटाइप के लिए बहुत अच्छा है, क्योंकि। और आम तौर पर, आप किसी प्रकार का कार्य कर रहे हैं जब डेटा विश्लेषण, समस्याओं का एक बहुत की संज्ञानात्मक करने जा रहे हैं। और इसलिए तुम बस है चाहता हूँ वास्तव में कुछ अच्छे भाषा कि ऐसा करने के लिए सिर्फ अच्छा है निर्मित में काम करता है, के रूप में विरोध निम्न स्तर चीजों के साथ सौदा करने के लिए। शुरुआत में तो, मैं बस जा रहा हूँ लागू करने के लिए आर क्या, क्यों होता है आप इसका इस्तेमाल करना चाहते हैं, और फिर कुछ डेमो में खत्म हो जाना, और बस वहां से चले जाते हैं। तो आर क्या है? आर सिर्फ एक भाषा विकसित की है सांख्यिकीय कंप्यूटिंग के लिए और दृश्य। तो क्या इसका मतलब यह है कि यह एक बहुत ही उत्कृष्ट भाषा है साथ सौदों बात यह है कि किसी भी प्रकार के लिए अनिश्चितता या डेटा दृश्य। तो आप इन सब है प्रायिकता वितरण। होने के लिए जा रहे हैं निर्मित में कार्य करता है। तुम भी उत्कृष्ट होगा संकुल की साजिश रचने। अजगर एक और प्रतिस्पर्धा है डेटा के लिए भाषा। और एक बात मुझे लगता है कि आर लगता है कि दृश्य है पर ज्यादा बेहतर है। तो क्या आप डेमो के रूप में देखेंगे अच्छी तरह से सिर्फ एक बहुत ही सहज भाषा है कि बस बहुत अच्छी तरह से काम करता है। यह रूप में, यह भी स्वतंत्र और खुला स्रोत है मुझे लगता है कि किसी भी अन्य अच्छी भाषा है। बस की और यहाँ, एक गुच्छा कीवर्ड को तुम पर फेंक। यदि आपके पास एक यह है, जिसका अर्थ गतिशील है एक वस्तु को सौंपा विशिष्ट प्रकार की तुलना में यह सिर्फ मक्खी पर इसे बदल देंगे। यह आलसी है इसलिए इसके बारे में होशियार है कैसे यह गणना करता है। यह वास्तव में काम कर सकते हैं जिसका अर्थ है कार्यात्मक कार्यों के बंद anything-- ताकि आधारित आप कर रहे हैं हेरफेर के किसी भी तरह कर रही है, यह कार्य बंद आधार पर किया जाएगा। तो द्विआधारी ऑपरेटरों, उदाहरण के लिए, बस स्वाभाविक कार्य कर रहे हैं। और सब कुछ है कि आपको बस इतना करना है जा रहे हैं जा रहे कार्यों खुद से दूर चला जाए। और तब के रूप में अच्छी तरह से उन्मुख वस्तु। तो यहाँ एक xkcd साजिश है। इतना ही नहीं मैं ऐसा महसूस हो रहा है क्योंकि Xkcd किसी भी प्रकार के लिए मौलिक है प्रस्तुति की, लेकिन क्योंकि मैं वास्तव में इस तरह लग रहा है बिंदु हथौड़ों कि का एक बहुत आप डेटा के कुछ प्रकार के कार्य कर रहे हैं जब समय विश्लेषण, समस्या नहीं है इसे चलाता है कितनी तेजी से इतना, लेकिन यह जा रहा है कि कितने समय तक कार्य कार्यक्रम के लिए ले जाते हैं। यहाँ तो बस विश्लेषण कि क्या है रणनीति एक या बी और अधिक कुशल है। यह होने जा रहा है आप कर रहे हैं कि कुछ साथ में एक बहुत निपटने के लिए जा तरह का निम्न स्तर भाषाओं आप SEG दोष के साथ काम कर रहे हैं, जहां, स्मृति आवंटन, initializations, यहां तक ​​कि निर्मित कार्यों बना रही है। और इस सामान सब नियंत्रित किया जाता है बहुत, बहुत सुंदर ढंग से आर में तो बस इस हथौड़ा बिंदु, सबसे बड़ी अड़चन संज्ञानात्मक होने जा रहा है। तो डेटा विश्लेषण एक बहुत ही कठिन समस्या है। आप क्या कर रहे हैं या नहीं मशीन सीखने या आप कर रहे हैं की बस किसी प्रकार का कर बुनियादी डेटा अन्वेषण, आपके पास करने के लिए नहीं करना चाहती एक दस्तावेज लेने के लिए और फिर संकलन हर बार कुछ आप एक स्तंभ की तरह दिखता है क्या देखना चाहते हैं, एक मैट्रिक्स में विशेष क्या प्रविष्टियों की तरह लग रहा है। तो तुम सिर्फ है चाहता हूँ कुछ वास्तव में अच्छा इंटरफ़ेस आप एक साधारण समारोह में चला सकते हैं अनुक्रमित करने के लिए कि जो कुछ भी तुम्हें पसंद है और बस वहाँ से चला था। और आप डोमेन की जरूरत इस के लिए विशिष्ट भाषा। और आर वास्तव में आप को परिभाषित करने में मदद मिलेगी समस्या है और इस तरह से इसे हल। तो यहाँ एक प्लाट दिखा प्रोग्रामिंग है आर की लोकप्रियता यह समय के साथ चला गया है के रूप में। तो जैसा कि आप 2013 या की तरह देख सकते हैं तो यह सिर्फ काफी उड़ा दिया। और यह सिर्फ उस की वजह से किया गया है प्रौद्योगिकी उद्योग में विशाल प्रवृत्ति के बारे में बड़े डेटा। इसके अलावा, न सिर्फ तकनीक उद्योग है, लेकिन वास्तव में किसी भी उद्योग that-- क्योंकि उद्योगों का एक बहुत करने के लिए एक तरह से मौलिक हैं इन समस्याओं को हल करने के लिए कोशिश कर रहा। और आम तौर पर, आप कुछ अच्छा हो सकता है इन समस्याओं को मापने का तरीका या यहां तक ​​कि उन्हें परिभाषित या डेटा का उपयोग कर उन्हें सुलझाने। इसलिए मैं अभी आर 11 वीं लगता है TIOBE पर सबसे लोकप्रिय भाषा और यह तब से बढ़ रहा है। तो यहाँ कुछ अधिक है आर की सुविधाओं यह है संकुल की एक विशाल संख्या और इन सभी अलग अलग चीजों के लिए। इसलिए किसी भी समय आप एक है कुछ समस्या है, सबसे समय आर होगा कि आप के लिए कार्य करते हैं। आप करना चाहते हैं तो क्या मशीन को किसी प्रकार का निर्माण कहा जाता सीखने एल्गोरिथ्म रैंडम जंगल या निर्णय के पेड़, या यह भी का मतलब लेने की कोशिश एक समारोह या इस सामान के किसी भी, आर कि पड़ेगा। यदि आप करते हैं और आप के बारे में परवाह आम है कि अनुकूलन, एक बात आप प्रोटोटाइप कर रहे हैं कि होने के बाद उच्च स्तर की भाषा के कुछ प्रकार, आपको लगता है कि in-- फेंक देंगे आप बस बंदरगाह कि अधिक कुछ कम स्तर की भाषा के लिए। क्या अनुसंधान के बारे में अच्छी बात है कि आप कर रहे हैं कि एक बार है यह प्रोटोटाइप किया है, तो आप C ++ चला सकते हैं, या फोरट्रान, या इनमें से किसी भी सीधे आर में निचले स्तर के लोगों को तो यह है कि एक सच है आर के बारे में अच्छी सुविधा, तुम सच के बारे में परवाह है अनुकूलन बिंदु। और यह भी वास्तव में अच्छा है वेब visualizations के लिए। तो D3.js, उदाहरण के लिए, है मैं एक और संगोष्ठी अनुमान हम आज प्रस्तुत है। और इस के लिए सचमुच कमाल है इंटरैक्टिव visualizations के कर रहे हैं। और D3.js आपको लगता है कि मानता है डेटा के कुछ प्रकार की साजिश रची जा करने के लिए और अनुसंधान करने के लिए सक्षम होने का एक शानदार तरीका है डेटा विश्लेषण आप इसे निर्यात से पहले अधिक D3.js करने के लिए या यहां तक ​​कि बस चलाने D3.js आर ही में आदेश, के रूप में अच्छी तरह से इन सभी के रूप में अन्य पुस्तकालयों के रूप में अच्छी तरह से। इसलिए इस बात का सिर्फ परिचय था आर और यही कारण है कि आप इसका इस्तेमाल हो सकता है। इसलिए उम्मीद है कि, मैं हूँ यदि आप कुछ आश्वस्त के बारे में सिर्फ यह पसंद है यह देखने की कोशिश कर रहा। तो मुझे आगे जाना है और के माध्यम से जाने के लिए जा रहा हूँ आर वस्तुओं के बारे में कुछ बुनियादी बातों और क्या आप वास्तव में क्या कर सकते हैं। यहाँ तो सिर्फ एक है गणित आज्ञाओं का गुच्छा। तो क्या आप का निर्माण करना चाहते you're-- कहना भाषा अपने आप को और आप बस चाहता हूँ विभिन्न उपकरणों का एक गुच्छा है। आपरेशन के किसी भी प्रकार आप आप लगता था कि बहुत ज्यादा आर में होने जा रहा है चाहता हूँ तो यहाँ दो प्लस 2 है। यहाँ 2 बार गड़बड़ी है। आर निर्मित में स्थिरांक का एक गुच्छा है आप अक्सर गड़बड़ी, ई की तरह इस्तेमाल करेंगे। और फिर, यहाँ 7 प्लस है runif, एक की runif इसलिए। यह है कि एक समारोह उत्पन्न करता है 0-1 एक यादृच्छिक वर्दी। और फिर 4 की शक्ति के लिए तीन है। वर्ग जड़ों नहीं है। प्रवेश नहीं है। तो आधार क्या करेंगे लॉग इन करें स्वयं के द्वारा घातीय। और फिर, आप एक आधार निर्दिष्ट है, तो आप जो चाहे बेस कर सकते हैं। और फिर यहाँ कुछ अन्य कमानों रहे हैं। तो अगर आप 23 आधुनिक विपणन 2 है। तो फिर तुम शेष है। तो फिर तुम वैज्ञानिक है अंकन भी आप अगर अभी और अधिक करना चाहते हैं और और अधिक जटिल बातें। तो यहाँ काम है। में तो ठेठ असाइनमेंट आर एक तीर के साथ किया जाता है तो यह कम है तो तुलना और हाइफन है। तो यहाँ मैं सिर्फ बताए हूँ चर वैल करने के लिए 3। और फिर मैं वैल बाहर मुद्रण कर रहा हूँ और फिर यह तीन बाहर प्रिंट। आर दुभाषिया में डिफ़ॉल्ट रूप से, यह आप के लिए चीजें बाहर प्रिंट होगा इसलिए यदि आप एक वैल मुद्रित निर्दिष्ट करने के लिए नहीं है किसी भी समय आप कुछ मुद्रित करना चाहते हैं। तुम बस वैल कर सकते हैं और तो यह आप के लिए है कि क्या होगा। इसके अलावा, आप तकनीकी रूप से बराबरी का उपयोग कर सकते हैं एक काम के ऑपरेटर के रूप में। मामूली बारीकियों रहे हैं तीर का उपयोग कर के बीच ऑपरेटर और बराबरी कार्य के लिए ऑपरेटर। अधिकतर सम्मेलन, हर किसी के द्वारा बस तीर ऑपरेटर का उपयोग करेगा। और यहाँ, मैं इस बताए हूँ परोक्ष अंकन एक पेट के 6 बुलाया। यह 1-6 एक वेक्टर उत्पन्न करता है। और यह वास्तव में अच्छा है तो क्योंकि तुम सिर्फ वैल करने के लिए वेक्टर असाइन और कहा कि स्वयं के द्वारा काम करता है। तो यह पहले से ही एक से चल रहा है एक बहुत ही सहज डेटा single-- का सिर्फ एक डबल की संरचना एक वेक्टर में प्रकार के कुछ प्रकार और जो सभी एकत्रित करेगा आप के लिए अदिश मूल्यों। तो अदिश से जाने के बाद, आप आर वस्तुओं है और यह एक वेक्टर है। एक वेक्टर के किसी भी प्रकार है एक ही प्रकार का संग्रह। तो यहाँ वैक्टर का एक गुच्छा रहे हैं। तो यह संख्यात्मक है। संख्यात्मक डबल कह के आर की तरह है। और तो डिफ़ॉल्ट रूप से, किसी भी नंबर एक डबल हो जाएगा। तो अगर आप 1.1, 3 की सी है, 5.7 नकारात्मक, सी एक समारोह है। यह सब तीन concatenates एक वेक्टर में संख्या। और यह इसलिए अगर be-- जाएगा आप स्वयं के द्वारा तीन नोटिस, आम तौर पर आप मान होता है इस एक पूर्णांक की तरह है कि, लेकिन सभी वैक्टर क्योंकि एक ही प्रकार के होते हैं, इस युगल के एक वेक्टर है या इस मामले में संख्यात्मक। rnorm उत्पन्न करता है कि एक समारोह है मानक सामान्य variables-- या मानक सामान्य मूल्यों। और मैं उनमें से दो को निर्दिष्ट कर रहा हूँ। इसलिए मैं करने के लिए कि बताए, rnorm 2 कर रहा हूँ devs, और फिर मैं devs के बाहर मुद्रण कर रहा हूँ। तो ये सिर्फ दो हैं यादृच्छिक सामान्य मूल्यों। और फिर अगर आप ऐसा करेंगे ints आप पूर्णांकों के बारे में परवाह है। तो यह सिर्फ स्मृति के बारे में है आवंटन और बचत स्मृति आकार। तो अगर आप संलग्न करना होगा राजधानी एल द्वारा अपनी संख्या सामान्य में, यह है आर के ऐतिहासिक अंकन कुछ के लिए लंबे समय तक पूर्णांक कहा जाता है। ज्यादातर समय, आप होगी डबल्स के साथ काम किया। और अगर आप कभी बाद में करेंगे अपने कोड का अनुकूलन पर, तुम सिर्फ इन ल जोड़ सकते हैं बाद में या इसे दौरान आप के बारे में precognitive पसंद कर रहे हैं क्या आप इन चर क्या करने जा रहे हैं। तो यहाँ एक चरित्र वेक्टर है। तो, फिर से, मैं concatenating रहा हूँ तीन तार इस बार। कि डबल तार सूचना है और एकल तार आर में वही कर रहे हैं तो मैं तो आर्थर और मारविन और है जब मैं उन सभी को यह मुद्रण बाहर हूँ डबल तार को दिखाने के लिए जा रहे हैं। और तुम भी शामिल करना चाहते हैं डबल या एकल स्ट्रिंग अपने पात्रों में है, तो आप कर सकते हैं या तो अपने तार वैकल्पिक। मारविन के लिए तो दूसरा तत्व है, यह है आप show-- के लिए जा रहा बस डबल तार और फिर एक स्ट्रिंग इसलिए इस बारी है। अगर आप चाहते हैं अन्यथा, एक डबल का उपयोग करने के लिए एक डबल स्ट्रिंग में स्ट्रिंग ऑपरेटर आप यह घोषणा कर रहे हैं, तो तुम सिर्फ भागने ऑपरेटर का उपयोग करें। तो अगर आप बैकस्लैश डबल स्ट्रिंग करते हैं। और अंत में, हम भी तार्किक वैक्टर है। तो logical-- तो सच और झूठे, और वे कर रहे हैं सभी राजधानी पत्र होने जा रहा। और फिर, फिर से, मैं concatenating रहा हूँ उन्हें और फिर bools करने के लिए उन्हें बताए। तो bools दिखाने जा रही है अगर आप सही गलत, और यह सच है। तो यहाँ vectorized अनुक्रमण है। मैं शुरुआत में तो एक function-- ले जा रहा हूँ यह एक sequence-- कहा जाता है 2-12 अनुक्रम। और मैं 2 द्वारा एक दृश्य ले जा रहा हूँ। तो यह क्या हो रहा है 2, 4, 6, 8, 10 और 12। और फिर, मैं अनुक्रमण हूँ तीसरा तत्व प्राप्त करने के लिए। तो मन में रखने के लिए एक बात है एक से शुरू करके कि आर अनुक्रमित। Vals तो तीन देने जा रहा है आप तीसरे तत्व। इस तरह एक दूसरे से अलग है यह शून्य से शुरू होता है, जहां भाषा। तो सी या सी ++ में, उदाहरण के लिए, आप कर रहे हैं चौथे तत्व प्राप्त करने के लिए जा रहा है। और यहाँ 3-5 Vals है। तो एक बात है कि वास्तव में अच्छा है कि आप यह है कि अंदर अस्थायी चर उत्पन्न कर सकते हैं और फिर बस उन्हें उड़ान पर इस्तेमाल करते हैं। यहाँ तो 3 से 5 है। तो मैं एक वेक्टर पैदा कर रहा हूँ 3, 4 और 5 के लिए और फिर मैं तीसरे पाने के लिए अनुक्रमण रहा हूँ चौथे, पांचवें और तत्वों। तो इसी तरह, आप कर सकते हैं इस सार बस करने के लिए एक वेक्टर के किसी भी तरह कि आप अनुक्रमण देता है। यहाँ तो फिर Vals और है सबसे पहले, तीसरे और छठे तत्वों। और फिर, अगर आप चाहते हैं एक पूरक करने के लिए, तो तुम सिर्फ शून्य से करना बाद में और उस हूँ तुम नहीं है कि सब कुछ दे पहले, तीसरे, या छठे तत्व। तो यह 4, 8, और 10 हो जाएगा। और आप प्राप्त करना चाहते हैं यहां तक ​​कि अधिक उन्नत, आप बूलियन वैक्टर जुटना कर सकते हैं। तो यह सूचकांक देने जा रहा है लंबाई 6 के इस बूलियन वेक्टर। तो प्रतिनिधि True है अल्पविराम 3। यह सच में तीन बार दोहराना होगा। तो यह आपको एक दे देंगे वेक्टर सही है, सही है, यह सच है। प्रतिनिधि ने ग़लत 4-- इस तुम्हें देने के लिए जा रहा है झूठी, झूठी, झूठी झूठी का एक वेक्टर। और उसके बाद C जुटना करने जा रहा है एक साथ उन दो Booleans। तो अगर आप तीन पाने के लिए जा रहे हैं TRUEs और फिर चार FALSEs। आप सूचकांक Vals, आप कर रहे हैं इतना है कि जब , सही है, जब सही है अगर सही है तो मिल जा रहा है। तो यह है कि हाँ कहने के लिए जा रहा है, मैं उन तीन तत्वों चाहते हैं। और फिर झूठी, झूठी, झूठी, झूठी जा रहा है नहीं, मैं उन तत्वों नहीं करना चाहती कहने के लिए तो यह उन्हें वापस जाने के लिए नहीं जा रहा है। और मैं यहाँ एक टाइपो वास्तव में लगता है कि वहाँ इस वजह से तीन दोहराने अगर सही है तो कह रहा है और, तकनीकी रूप से तुम झूठी 4 दोहराएँ, और केवल छह तत्वों इतनी झूठी दोहराने है, यह तीन झूठी दोहराने होना चाहिए। मैं आर भी ऐसे काफी चालाक है लगता है कि आप तो बस, यहाँ 4 निर्दिष्ट करते हैं यह भी आउट त्रुटि नहीं होगा। यह सिर्फ आप इस मूल्य दे देंगे। तो यह सिर्फ इतना है कि चौथे झूठी उपेक्षा करेंगे। तो यहाँ vectorized काम है। यह सिर्फ सेट set.seed-- तो कूट-यादृच्छिक संख्या के लिए बीज। इसलिए मैं करने के लिए बीज स्थापित कर रहा हूँ जिसका अर्थ है 42, मैं उत्पन्न कि अगर तीन सामान्य यादृच्छिक मूल्यों, और फिर आप अगर अपने दम पर set.seed रन एक ही मूल्य 42 का उपयोग कर कंप्यूटर, तो आप भी मिलता है एक ही तीन यादृच्छिक normals। तो यह वास्तव में अच्छा है reproducibility के लिए। आमतौर पर, आप क्या कर रहे हैं जब कुछ वैज्ञानिक विश्लेषण की तरह, आप बीज सेट करना चाहते हैं। यही कारण है कि जिस तरह से अन्य वैज्ञानिकों बस कर सकते हैं आप सटीक एक ही कोड को पुन: पेश वे सटीक होगा क्योंकि किया एक ही यादृच्छिक चर that-- या यादृच्छिक आप के रूप में अच्छी तरह से बाहर ले लिया है कि मूल्यों। और तो vectorized असाइनमेंट यहां से 2 Vals 1 दिखा रहा है। तो यह पहले दो तत्वों लेता है Vals की और उसके बाद शून्य करने के लिए उन्हें प्रदान करती है। और फिर, आप भी बस क्या कर सकते हैं Booleans के साथ इसी तरह की बात। तो Vals इस वसीयत 0-- के बराबर नहीं है यदि आप एक वेक्टर झूठी दे, झूठी, जब सही है इस मामले में। और फिर, यह किसी भी कहने के लिए जा रहा है सच थे कि उन इंडेक्सेस की, तो यह करने के लिए 5 कि आवंटित करने के लिए जा रहा है। इसलिए यह तीसरा तत्व लेता है यहाँ और फिर 5 करने के लिए इसे प्रदान करती है। और यह वास्तव में अच्छा है निम्न स्तर भाषाओं की तुलना जहां आप छोरों के लिए उपयोग करने के लिए है इस vectorized सामान सब करने के लिए यह सिर्फ बहुत सहज है, क्योंकि और यह एक एकल एक लाइनर है। और महान के बारे में क्या हो रहा है vectorized अंकन आर में, इन की तरह कर रहे हैं निर्मित में वे लगभग रूप में तेजी से कर रहे हैं इतना है कि एक कम स्तर की भाषा के रूप में कर के रूप में आर में पाश के लिए एक बनाने का विरोध और फिर यह क्या करने वाले गतिशील अनुक्रमण ही। और है कि कर की तुलना में धीमी हो जाएगा vectorized इस तरह की बात यह समानांतर, जहां में यह कर सकते हैं जहां यह मूल रूप से सूत्रण में यह कर रही है। तो यहाँ आपरेशनों vectorized है। तो मैं 3 करने के लिए एक मूल्य 1 पैदा कर रहा हूँ, बताए कि vec1 करने के लिए, 3-5, vec2, उन्हें एक साथ जोड़ने। यह तो उन्हें घटक वार कहते हैं यह इतने पर एक प्लस 3, 2 प्लस 4, और है। vec1 टाइम्स vec2। यह दो पलता बुद्धिमान घटक मूल्यों। तो यह एक बार 3, 2 बार है 4, और फिर 3 बार 5। और फिर, इसी तरह आप भी कर सकते हैं तार्किक तुलना comparisons--। तो यह इस में सच झूठी झूठी है मामला एक है, क्योंकि तीन से अधिक नहीं है 2 से 4 से अधिक नहीं है। यह मैं एक टाइपो लगता है, 3 निश्चित रूप से नहीं अधिक से अधिक 5 से अधिक है। हाँ। और इसलिए तुम बस सब कर सकते हैं इन सरल आपरेशनों उनकी विरासत में मिला है, क्योंकि कक्षाओं के लिए खुद से। तो यह है कि सिर्फ वेक्टर था। और कहा कि सबसे मौलिक की तरह है आर वस्तु है, क्योंकि एक वेक्टर दी आप और अधिक उन्नत वस्तुओं का निर्माण कर सकते हैं। तो यहाँ एक मैट्रिक्स है। यह अनिवार्य रूप से अमूर्त है एक मैट्रिक्स में ही क्या है की। तो इस मामले में, यह अलग तीन है हर एक को एक स्तंभ है जहां वैक्टर, या आप यह विचार कर सकते हैं हर एक के रूप में एक पंक्ति है। तो मैं एक से एक मैट्रिक्स के लिए भंडारण के हूँ 9 और फिर मैं तीन पंक्तियों को निर्दिष्ट कर रहा हूँ। तो 1 से 9 तक, आप एक सदिश एक दे देंगे 2, 3, 4, 5, 6, और 9 के लिए सभी तरह। यह भी ध्यान में रखने के लिए एक बात यह है कि आर भंडार स्तंभ, मेजर प्रारूप में मान। तो दूसरे शब्दों में, आप एक देखने के लिए जब 9 के लिए, यह them-- स्टोर करने के लिए जा रहा है यह, 2, 1 होने जा रहा है पहले कॉलम में 3, और फिर यह करूँगा 4, 5, दूसरे स्तंभ में 6, और फिर 7, तीसरे स्तंभ में 8, 9। और यहाँ कुछ अन्य कर रहे हैं आप उपयोग कर सकते हैं आम कार्य करता है। तो मंद चटाई, यह आपको दे देंगे मैट्रिक्स के आयाम। यह आप वापस जाने के लिए जा रहा है आयाम का एक वेक्टर। इस मामले में, क्योंकि तो हमारे मैट्रिक्स, 3 से 3 इसे आप एक देने के लिए जा रहा है संख्यात्मक वेक्टर 3 3 कि। और यहाँ सिर्फ दिखा रहा है मैट्रिक्स गुणन। तो आम तौर पर, तुम बस करते हैं asterisk-- ताकि चटाई तारक mat-- इस होने जा रहा है घटक वार आपरेशन या Hadamard उत्पाद क्या कहा जाता है। तो यह प्रत्येक क्या करने जा रहा है तत्व घटक के लिहाज से। हालांकि, अगर आप चाहते हैं मैट्रिक्स multiplication-- तो पहली पंक्ति टाइम्स गुणा दूसरा मैट्रिक्स का पहला स्तंभ और इतने on-- आप का प्रयोग करेंगे इस प्रतिशत आपरेशन। और चटाई की टी सिर्फ एक है स्थानांतरित करने के लिए आपरेशन। इसलिए मैं में स्थानांतरित ले कह रहा हूँ मैट्रिक्स, मैट्रिक्स से गुणा खुद को। और फिर यह जा रहा है एक और 3 आप करने के लिए वापस तीन मैट्रिक्स दिखाकर आप चाहते हैं चाहते हैं उत्पाद। और इतना है कि मैट्रिक्स था। यहाँ एक डेटा फ्रेम कहा जाता है क्या है। आप के रूप में के बारे में सोच सकते हैं एक डेटा फ्रेम एक मैट्रिक्स, लेकिन प्रत्येक स्तंभ में ही एक अलग प्रकार का होने जा रहा है। तो क्या डेटा के बारे में वास्तव में अच्छा है तख्ते है डेटा विश्लेषण वह अपने आप में, आप इस सब के लिए जा रहे हैं विषम डेटा और इन सब सच गंदा बातें जहां प्रत्येक के कॉलम खुद को विभिन्न प्रकार के हो सकते हैं। यहाँ तो मैं एक बनाने कह रहा हूँ डेटा फ्रेम, 1-3 ints करना और फिर भी एक चरित्र वेक्टर है। तो मुझे लगता है के माध्यम से सूचकांक कर सकते हैं इन स्तंभों में से प्रत्येक के और फिर मैं मूल्यों खुद को मिलेगा। और अगर आप भी किसी प्रकार कर सकते हैं डेटा तख्ते पर कार्रवाई की। और ज्यादातर समय आप कर रहे हैं जब डेटा विश्लेषण या किसी प्रकार का कर preprocessing की, तुम हो जाएगा इन डेटा संरचनाओं के साथ काम कर रहे हैं जहां प्रत्येक स्तंभ जा रहा है एक अलग प्रकार का हो। अंत में, इसलिए इन अनिवार्य रूप से बस रहे हैं आर सूची में चार आवश्यक वस्तुओं बस किसी भी एकत्रित करेगा अन्य वस्तुओं में आप चाहते हैं। तो यह एक में इस दुकान होगी आप आसानी से उपयोग कर सकते हैं कि चर। यहाँ तो, मैं एक सूची ले जा रहा हूँ। मैं सामान तीन बराबर होती है कह रहा हूँ। इसलिए मैं में एक तत्व है करने के लिए जा रहा हूँ सूची है, और इस सामान भी कहा जाता है, और यह मूल्य 3 किया जा रहा है। मैं भी एक मैट्रिक्स बना सकते हैं। इसलिए इस 4 और अंत पंक्ति के लिए 1 है दो के बराबर होती है, तो एक दो दो मैट्रिक्स द्वारा। इसके अलावा सूची में है और यह चटाई कहा जाता है। moreStuff, एक चरित्र स्ट्रिंग, अपने आप में और यहां तक ​​कि एक और सूची। इसलिए इस 5 और भालू है कि एक सूची है। यह मूल्य 5 और यह तो चरित्र स्ट्रिंग भालू है और यह एक सूची के अंदर एक सूची है। तो आप इन कर सकते हैं पुनरावर्ती बातें जहां आप another-- एक है प्रकार के भीतर टाइप करें। तो इसी तरह, आप एक मैट्रिक्स हो सकता है एक और मैट्रिक्स के अंदर और इतने पर। और एक सूची सिर्फ एक अच्छा तरीका है इकट्ठा करने और कुल की इन सभी विभिन्न वस्तुओं। और अंत में, यहाँ सिर्फ मामले में मदद कर रहा है यह सिर्फ बहुत जल्दी खत्म हो चुका था। तो कभी भी आप भ्रमित कर रहे हैं समारोह के कुछ प्रकार के बारे में, आपको लगता है कि समारोह की मदद कर सकते हैं। तो क्या आप मदद मैट्रिक्स कर सकते हैं या एक प्रश्न चिह्न मैट्रिक्स। और मदद और सवालिया निशान हैं बस एक ही बात के लिए आशुलिपि इसलिए वे फर्जी नाम हो। एलएम एक समारोह है कि सिर्फ एक रेखीय मॉडल करता है। लेकिन तुम सिर्फ कैसे पता नहीं है कि अगर काम करता है, तो आप सिर्फ एल एम की मदद कर सकते हैं और कहा कि आप कुछ दे दूँगा प्रलेखन की तरह है कि तरह का एक तरह लग रहा है यूनिक्स, जहां में मैन पेज आप का एक संक्षिप्त विवरण है क्या यह अपने तर्क हैं भी, क्या करता है, यह देता है, और कैसे पर सिर्फ सुझाव क्या इसका इस्तेमाल करते हैं, और कुछ उदाहरणों के रूप में अच्छी तरह से करने के लिए। तो मुझे आगे और शो चलते हैं आर ठीक है का उपयोग कर के कुछ डेमो। इसलिए मैं बहुत ऊपर चला गया जल्दी से सिर्फ डाटा संरचनाओं और किसी प्रकार का आपरेशन के कुछ op--। यहाँ कुछ कार्यों है। यहाँ तो मैं बस जा रहा हूँ एक समारोह को परिभाषित करने के लिए। इसलिए मैं भी उपयोग कर रहा हूँ यहाँ असाइनमेंट ऑपरेटर, और फिर मैं कह रहा हूँ एक समारोह के रूप में यह घोषणा। और यह मूल्य एक्स लेता है। तो यह है कि आप चाहते हैं कि किसी भी मूल्य है और मैं खुद को एक्स वापस करने के लिए जा रहा हूँ। तो इस पहचान समारोह है। और इस बारे में शांत क्या है अन्य भाषाओं की तुलना और एक अन्य निम्न स्तर भाषा कि एक्स है किसी भी प्रकार के ही किया जा सकता है और यह है कि प्रकार वापस कर देंगे। इसलिए यदि आप ऐसा करते हैं imagine-- कर सकते हैं मुझे बस जल्दी से इस चलाते हैं। सॉरी। तो एक बात मैं यह भी उल्लेख करना चाहिए इस संपादक मैं उपयोग कर रहा हूँ वह यह है कि rstudio कहा जाता है। यह एक आईडीई क्या कहा जाता है है। और एक बात है कि इस बारे में वास्तव में अच्छा यह एक बहुत शामिल है चीजें आप स्वयं के द्वारा अनुसंधान में करना चाहते हैं अभी बहुत intuitively। तो यहाँ एक दुभाषिया कंसोल है। तो इसी तरह, आप भी इस प्राप्त कर सकते हैं सिर्फ एक राजधानी आर रही द्वारा सांत्वना कच्चे और यह बिल्कुल है सांत्वना के रूप में एक ही बात है। इसलिए मैं सिर्फ आईडी समारोह एक्स, एक्स, एक्स कर सकते हैं। Then-- और फिर उस और खुद ठीक हो जाएगा। तो rstudio महान है यह सांत्वना है क्योंकि। यह भी दस्तावेजों है आप पर चलने के लिए करना चाहते हैं। और फिर यह कुछ चर है आप वातावरण में देख सकते हैं। और फिर, अगर आपके पास तुम तो, भूखंडों ऐसा करने के लिए विरोध के रूप में बस, इसे यहाँ देख सकते हैं इन सभी विभिन्न खिड़कियों के प्रबंध खुद के द्वारा। मैं वास्तव में व्यक्तिगत रूप से शक्ति का उपयोग करें, लेकिन मैं rstudio तरह लग रहा है, बस उत्कृष्ट है एक अच्छा विचार प्राप्त करने के लिए आमतौर पर आर उपयोग करने के लिए कैसे की, जब आप करने की कोशिश कर रहे हैं कुछ नया कार्य जानने के लिए, आप को संभाल नहीं करना चाहते हैं एक ही बार में भी बहुत सी बातें। तो आर सिर्फ एक very-- rstudio है सीखने आर के एक बहुत अच्छा तरीका है साथ सौदा करने के लिए बिना इन सभी अन्य बातें। यहाँ तो मैं नमस्कार आईडी चल रहा हूँ। इस हैलो देता है। आईडी 123। यहाँ पूर्णांकों की एक वेक्टर है। तो इसी तरह, आप कर सकते हैं क्योंकि , मूल्य में से किसी को किसी प्रकार ले आप की आईडी लौटने कर सकते हैं एक्स तो यह 1234 और 5 देता है। और सिर्फ इतना है कि आप को दिखाने के लिए मुझे जाने यह वास्तव में एक पूर्णांक है। और इसी तरह, आप कक्षा करते हैं आईडी एक्स, यह पूर्णांक होने जा रहा है। और फिर, आप भी कर सकते हैं दोनों की तुलना और यह सच है। इसलिए मैं एक्स के अगर आईडी जाँच कर रहा हूँ बराबर एक्स और नोटिस के बराबर होती है कि यह आप दो TRUEs देता है। तो यह कह रहे हैं नहीं है समान दो वस्तुओं, लेकिन प्रविष्टियों में से प्रत्येक हैं वैक्टर समान भीतर। यहाँ bounded.compare है। तो यह थोड़ा और अधिक जटिल है उस में यह एक अगर हालत है और बाकी और फिर यह दो लेता है एक समय में तर्क। इतनी एक्स किसी भी प्रकार की है। और मैं यह कह रहा हूँ दूसरा तर्क एक है। इस के रूप में अच्छी तरह से कुछ भी हो सकता है। लेकिन डिफ़ॉल्ट रूप से, यह ले जा रहा है 5 तुम कुछ भी उल्लेख नहीं करते हैं। यहाँ तो मैं कहने जा रहा हूँ एक्स एक से अधिक है। मैं एक निर्दिष्ट नहीं करते हैं तो, अगर यह एक्स 5 से अधिक है, तो कहते हैं तो मैं सच वापसी करने जा रहा हूँ। वरना, मैं झूठी वापसी करने जा रहा हूँ। तो मुझे आगे जाना है और इस को परिभाषित करते हैं। और अब मैं जा रहा हूँ bounded.compare 3 चलाते हैं। तो यह तीन कम है कहते हैं than-- 5 से तीन अधिक है। नहीं, यह इतना गलत नहीं है। और 3 bounded.compare और मैं जा रहा हूँ एक दो के बराबर होती है का उपयोग करते हुए यह तुलना करने के लिए। तो अब मुझे लगता है मैं अब, हाँ कह रहा हूँ एक कुछ और बनना चाहता हूँ। मैं एक कहने जा रहा हूँ तो, आप 2 होना चाहिए। मैं इस तरह की कर सकते हैं या तो अंकन या मैं एक दो के बराबर होती है कहना। यह एक अधिक पठनीय है उस में आप कर रहे हैं जब ये वास्तव में देख रहे हैं जटिल कार्यों कि कई arguments-- और यह लो दर्जनों सिर्फ यह कह oftentimes-- किया जा सकता है एक दो के लिए और अधिक पठनीय है बराबरी भविष्य में ऐसा है कि आप बाद में आप क्या कर रहे हैं पता चल जाएगा। तो इस मामले में, मैं कर रहा हूँ कहावत दो से तीन अधिक है। हां यह है। और इसी तरह, मैं बस को हटा सकते हैं इस हैं और कहते हैं, दो से तीन अधिक है जहां एक दो बराबर होती है। और वह भी सच है। हाँ? दर्शक: आप कर रहे हैं लाइन से लाइन को क्रियान्वित? डस्टिन ट्रॅन: हाँ मैं हूँ। तो मैं क्या कर रहा हूँ यहाँ है इस पाठ को ले जा document-- और rstudio यह है कि के बारे में महान क्या है मैं सिर्फ एक short-- एक कुंजी शॉर्टकट चला सकते हैं। इसलिए मैं नियंत्रण दर्ज कर रहा हूँ। और फिर, मैं ले जा रहा हूँ पाठ दस्तावेज़ में लाइन और फिर कंसोल में डाल। यहाँ तो मैं कह रहा हूँ, bounded.compare और मैं नियंत्रण एक्स कर रहा हूँ। तो मैं बस के रूप में अच्छी तरह से यहाँ चला सकता हूँ कर सकते हैं। और फिर उस ले जाऊँगा फिर लाइन और यहां रख दिया। और फिर इसी तरह, मैं यहाँ चला सकता हूँ कर सकते हैं। और फिर यह सिर्फ परिभाषित करने रखेंगे उस तरह सांत्वना में लाइनों। और तुम भी घुंघराले नोटिस ब्रेसिज़ सिर्फ सी वाक्य रचना में की तरह कर रहे हैं। x-- अगर हालत भी अगर कोष्ठकों उपयोग करने के लिए जा रहा है और उसके बाद तुम किसी और का उपयोग कर सकते हैं। एक और यदि एक और है। तो यह एक्स होने जा रहा है उदाहरण के लिए, एक बराबर होती है। और फिर मैं जा रहा हूँ यहाँ कुछ वापसी। दो अलग-अलग हैं नोटिस चल रहा है कि यहाँ बातें। एक मैं निर्दिष्ट करने रहा हूँ कि यहाँ है मूल्य वापसी सच। यहाँ मैं सिर्फ एक्स कह रहा हूँ। तो आर डिफ़ॉल्ट रूप से आमतौर पर होगा पिछले arguments-- ले या, कोड की अंतिम पंक्ति ले और कहा कि इसे लौटा है क्या हो जाएगा। यहाँ तो यह एक ही है वापसी एक्स कर के रूप में बात। और सिर्फ तुम्हें दिखाने के लिए। और फिर, यह है कि बस की तरह काम करेंगे। इसलिए मुझे इस के साथ जारी है। इसलिए यदि नहीं तो। और वास्तव में, मैं वापसी कर सकते हैं मैं चाहता हूँ कुछ भी। तो मैं भी नहीं करना पड़ेगा वापसी Booleans हर समय, मैं अभी कुछ और लौट सकते हैं। तो मैं वापसी सहन कर सकते हैं। एक्स के बराबर होती है तो, अगर एक बराबर होती है यह भालू वापस करने के लिए जा रहा है। अन्यथा, यह सच वापसी करने जा रहा है। मैं भी एक वेक्टर कर सकते हैं या वास्तव में कुछ भी। और आम तौर पर स्थिर रुप में टाइप भाषाओं, आप यहाँ एक प्रकार निर्दिष्ट करने के लिए होगा। और यह सिर्फ कुछ भी हो सकता है कि नोटिस। और अनुसंधान यह पर्याप्त है कि बुद्धिमान है सिर्फ यह करना होगा और यह ठीक काम करेगा। तो मुझे यह परिभाषित करते हैं। ओह, माफ Unexpected--। यह यहाँ एक घुंघराले गले लगा होना चाहिए। ठीक है। बिंदास। ठीक है। तो अब तीन की तुलना करते हैं और एक 3 के बराबर होती है। तो यह return-- चाहिए मूल्य भालू yeah--। तो अब एक अधिक सामान्य बात की तरह है क्या अन्य डेटा संरचनाओं के बारे में। तो अगर आप इस समारोह है। यह किसी भी प्रकार पर काम चल रहा है तीन या किसी सांख्यिक जैसे मूल्य की, दूसरे शब्दों में, डबल। एक सदिश की तरह कुछ के बारे में लेकिन क्या। तो क्या तुम इतनी do-- अगर मैं कर रहा हूँ होता है 6 करने के लिए कहते हैं, के लिए वैल, 4 आवंटित करने के लिए जा रहा है। इसलिए मैं इस, यह वापस अगर 4, 5, 6 से एक वेक्टर है। अब देखते हैं कि क्या होता है, देखते हैं अगर मैं ऐसा वैल bounded.compare। तो यह आपको 1251 15 देने जा रहा है। दूसरे शब्दों में, यह कह रहा है आप इस हालत पर नजर डालें तो इसलिए यह एक्स कम है कहते हैं एक या कुछ और की तुलना में। तो यह थोड़ा है भ्रामक क्योंकि अब अगर आप अभी क्या हो रहा है पता नहीं है। इसलिए मैं वास्तव में एक बात है कि लगता है बस डिबग करने की कोशिश कर के बारे में अच्छा तुम सिर्फ वैल अधिक है कर सकते हैं एक और की तुलना में वहां क्या होता है देखने के लिए। तो val-- एक डिफ़ॉल्ट 5 ताकि द्वारा होता है चलो बस 5 से अधिक से अधिक वैल करते हैं। तो यह एक वेक्टर झूठी झूठी सही है। तो अब आप देख रहे हैं जब यही नहीं, अगर यह कहने के लिए जा रहा है, और फिर यह आप यह देने के लिए जा रहा है झूठी झूठी का एक वेक्टर सही है। आप आर, आर में यह पारित तो जब आप क्या कर रहे हैं पता नहीं है। यह एक एकल की उम्मीद है क्योंकि एक बूलियन है जो मूल्य, और अब आप इसे Booleans का एक वेक्टर दे रहे हैं। तो डिफ़ॉल्ट रूप से, आर बस है बिल्ली क्या कहने के लिए जा रहे हैं, मैं आप कर रहे हैं कि मान जा रहा हूँ यहां पहला तत्व लेने के लिए जा रहा है। इसलिए मुझे लगता है कि मैं जा रहा हूँ say-- करने जा रहा हूँ यह गलत है कि कल्पना करने के लिए। इसलिए यह कहने के लिए जा रहा है नहीं, यह सही नहीं है। इसी प्रकार, यह जा रहा है वैल एक बराबर हो। नहीं, 5 खेद है। और यह भी रूप में अच्छी तरह से झूठी होने जा रहा है। इसलिए यह कोई कहने के लिए जा रहा है यह के रूप में अच्छी तरह से तो यह सच नहीं है यह पिछले एक वापस करने के लिए जा रहा है। तो यह एक अच्छी बात है या बुरा या तो है बात यह है कि आप इसे कैसे देखते हैं पर निर्भर करता है। आप कर रहे हैं क्योंकि जब इन कार्यों बनाने, आप वास्तव में क्या हो रहा है पता नहीं है। तो कभी कभी आप एक त्रुटि चाहता हूँ, या शायद तुम सिर्फ एक चेतावनी चाहते हैं। इस मामले में, आर ऐसा नहीं करता है। तो यह वास्तव में करने के लिए हो रहा है आप के बंद आधारित है क्या आप भाषा लगता है इस मामले में क्या करना चाहिए आप Booleans का एक वेक्टर में पारित अगर आप एक शर्त अगर कर रहे हैं। तो चलो आप मूल था कि हम कहते हैं एक और अगर साथ सच लौट सकते हैं और आप कर रहे हैं झूठी वापसी करने जा रही है। सार संक्षेप का तो एक ही रास्ता यह मैं कहने के लिए है यहां तक ​​कि इस सशर्त बात की जरूरत नहीं है। मैं क्या कर सकता एक और बात यह है बस मानों खुद को लौटने। तो अगर तुम नोटिस, आप अगर वैल में 5 से अधिक है करते हैं, यह एक वापस करने के लिए जा रहा है वेक्टर झूठी झूठी सच है। शायद यह है कि तुम क्या है bounded.compare के लिए चाहते हैं। आप Booleans का एक वेक्टर वापसी करना चाहते हैं जहां यह प्रत्येक मान तुलना खुद के लिए। तो तुम सिर्फ bounded.compare कर सकते हैं समारोह एक्स, एक 5 के बराबर होती है। और फिर बजाय कर रही है अगर यह किसी और की हालत, मैं बस वापस जाने के लिए जा रहा हूँ एक्स 5 से अधिक है। तो यह तो सच है, अगर यह सच वापसी करने जा रहा है। अगर ऐसा नहीं है और फिर, यह है झूठी वापसी करने जा रही है। और इस के लिए काम करेंगे इन संरचनाओं के किसी भी। तो मैं एक 6 या 9 सी bounded.compare कर सकते हैं और फिर मैं एक 6 के बराबर होती है कहने जा रहा हूँ उदाहरण के लिए। और फिर यह जा रहा है आप सही बुलियन दे आप डिजाइन कर रहे हैं कि वेक्टर। तो उन सिर्फ कार्य कर रहे हैं और अब मुझे बस जाने यदि आप कुछ इंटरैक्टिव दृश्यों को दिखाने के। मुझे लगता है मैं वास्तव में है नहीं लगता वाई-फाई यहाँ तो मुझे बस आगे चलते हैं और मुझे लगता है कि इस एक को छोड़। अच्छा है कि लेकिन एक बात हालांकि यह है कि आप अगर बस का एक गुच्छा परीक्षण करना चाहते हैं अलग डेटा आदेश, अलग डेटासेट का एक गुच्छा है कि पहले से ही आर में preloaded रहे हैं तो उनमें से एक है आईरिस डाटासेट बुलाया। यह सबसे अच्छी तरह से जाना जाता है में से एक है मशीन सीखने में लोगों को। आप आमतौर पर सिर्फ किसी प्रकार का क्या होगा अपने कोड चलाता है अगर परीक्षण के मामलों को देखने के लिए। तो चलो बस आईरिस है क्या जाँच करते हैं। इसलिए इस बात को जा रहा है एक डेटा फ्रेम किया जाना है। और यह की लंबी क्योंकि तरह है मैं सिर्फ आईरिस बाहर मुद्रित। यह पूरी बात बाहर मुद्रण है। तो यह सब इन अलग-अलग नाम है। तो आईरिस एक संग्रह है के विभिन्न फूल। इस मामले में, यह कह रहा है आप इसे की प्रजातियों, इन सभी विभिन्न चौड़ाई और बाह्यदल और पत्ती की लंबाई। और तो आम तौर पर, अगर आप, आईरिस मुद्रित करना चाहते हैं उदाहरण के लिए, आप यह है नहीं करना चाहते हैं उस पर ले जा सकते हैं, क्योंकि यह सब करना अपने पूरे सांत्वना। सच तो यह है कि एक बात अच्छा सिर समारोह है। तो तुम सिर्फ सिर करते हैं आईरिस, यह आपको दे देंगे पहले पांच पंक्तियों, या छह मुझे लगता है। और फिर ठीक है, तुम बस यहाँ निर्दिष्ट कर सकते हैं। तो 20-- इस दे देंगे आप पहले 20 पंक्तियों। और मैं वास्तव में तरह था इस बात का हैरान मुझे छह इसलिए मुझे आगे जाने दिया दिया और क्षमा करें, iris-- या सिर की जाँच करें। और यहाँ यह दे देंगे आप प्रलेखन मूल्य सिर करता है की क्या। तो यह पहली बार रिटर्न या किसी वस्तु के पिछले। और फिर मैं जा रहा हूँ चूक पर दिखेगा। और फिर यह डिफ़ॉल्ट कहते हैं विधि सिर एक्स और एन 6L बराबर होती है। तो यह पहले छह तत्वों देता है। और तुम यहाँ नोटिस इसी तरह, अगर मैं एन निर्दिष्ट करने के लिए नहीं था 6 के बराबर होती है। डिफ़ॉल्ट रूप से यह छह का उपयोग करता है, मुझे लगता है। अगर मैं चाहता हूँ और फिर, एक निश्चित निर्दिष्ट करने के लिए मूल्य, तो मैं के रूप में अच्छी तरह से है कि देख सकते हैं। कि कुछ सरल आज्ञाओं है तो और यहाँ अच्छी तरह से just-- है कि एक और एक है, मैं यह वास्तव में है can-- एक छोटे से अधिक जटिल है, लेकिन यह सिर्फ कक्षा में ले जाएगा आईरिस डाटासेट में से प्रत्येक स्तंभ की। इसलिए इस इनमें से प्रत्येक क्या आपको दिखाई देगा कॉलम उनके प्रकार के संदर्भ में कर रहे हैं। तो बाह्यदल लंबाई, आंकिक है बाह्यदल चौड़ाई सांख्यिक है। इन सभी मूल्यों को सिर्फ सांख्यिक हैं आप इस डेटा से बता सकते हैं क्योंकि इन कर रहे हैं संरचना सभी सांख्यिक जा रहा है। और प्रजातियों स्तंभ एक कारक बनने जा रही है। तो आम तौर पर, आपको लगता है कि लगता है कि होगा यह एक चरित्र स्ट्रिंग की तरह है। लेकिन तुम सिर्फ irisSpecies करते हैं, और फिर मैं, सिर 5 क्या करने जा रहा हूँ और इस मुद्रित करने के लिए जा रहा है पहले पांच मूल्यों बाहर। और फिर इस स्तर को नोटिस। तो यह इस saying-- है आर की तरह है की स्पष्ट चर रहा। तो बजाय सिर्फ चरित्र तार हो रही है, यह स्तर निर्दिष्ट किया गया है इन बातों से जो कर रहे हैं। तो चलो irisSpecies एक कहते हैं। तो तुम यहाँ क्या करना चाहते हैं मैं कर रहा हूँ है इस प्रजाति स्तंभ के लिए subsetting। तो क्या यह लेता है प्रजाति स्तंभ और उसके बाद यह अनुक्रमित पहला तत्व प्राप्त करने के लिए। तो यह आप setosa देना चाहिए। और यह भी यहाँ आप के स्तर देता है। तो अगर आप भी तुलना कर सकते हैं चरित्र setosa करने के लिए इस और इस के लिए नहीं जा रहा है एकदम सही होगा क्योंकि एक अन्य की तुलना में एक अलग प्रकार की है। या मैं यह अनुसंधान क्योंकि सच है लगता है कि अधिक से अधिक बुद्धिमान है। और यह तो यह और पर लग रहा है शायद यह तुम क्या चाहते है, कहते हैं। तो यह चरित्र कहने जा रहा है स्ट्रिंग setosa इस एक के रूप में ही है। और फिर इसी तरह, आप कर सकते हैं यह भी सिर्फ इतने पर की तरह इन हासिल किया है। इसलिए इस बात का सिर्फ कुछ प्रकार है डाटासेट के त्वरित आदेशों। तो यहाँ कुछ डेटा अन्वेषण है। तो यह एक छोटे से अधिक है डेटा विश्लेषण के साथ शामिल किया गया। और यह कुछ से लिया जाता है बर्कले में के लिए अनुसंधान में bootcamp। विदेशी तो पुस्तकालय। तो मैं एक में लोड करने के लिए जा रहा हूँ विदेशी कहा जाता है कि पुस्तकालय। तो यह मुझे दे रहा है read.dta इसलिए मैं इस डाटासेट है कि मान। यह वर्तमान में संग्रहीत किया जाता है मेरी सांत्वना की निर्देशिका काम कर रहे। तो चलो बस देखते हैं क्या कार्य निर्देशिका है। यहाँ तो मेरे कार्य निर्देशिका है। और डॉट डेटा, इस पढ़ें बात यह है कि इस फाइल को कह रहा है का डेटा फ़ोल्डर में स्थित है इस वर्तमान कार्य निर्देशिका। और यह नहीं है read.dta एक मूलभूत कमांड। मुझे लगता है मैं पहले से ही उस में भरी हुई है। आईईआई मैं पहले से ही इस में भरी हुई ग्रहण किया। लेकिन इतना read.dta नहीं जा रहा है एक मूलभूत कमांड होना। और कहा कि आपके पास करने के लिए जा रहे हैं यही कारण है इस पुस्तकालय में लोड करने के लिए package-- इस पैकेज विदेशी कहा जाता है। और अगर तुम नहीं है तो पैकेज, मुझे लगता है विदेशी निर्मित में लोगों में से एक है। अन्यथा, आप भी कर सकते हैं install.packages करना और इस पैकेज स्थापित हो जाएगा। और यह नहीं, तुम आर उह दे देंगे। और फिर मैं बस को रोकने के लिए जा रहा हूँ यह है कि मैं पहले से ही यह किया है। लेकिन आर के बारे में वास्तव में अच्छा क्या है पैकेज प्रबंधन करता है प्रणाली बहुत सुंदर है। यह सब कुछ स्टोर होगा क्योंकि वास्तव में अच्छी तरह से आप के लिए। तो इस मामले में, यह स्टोर करने के लिए जा रहा है उस में मेरा विश्वास है कि यहां इस पुस्तकालय। तो कभी भी आप करना चाहते हैं नए पैकेज को स्थापित करने, यह बस के रूप में आसान है install.packages कर और आर सभी का प्रबंधन करेगा आप के लिए संकुल। तो अगर आप में कुछ करने की जरूरत नहीं है आप बाहरी पैकेज है जहां अजगर, कागज की तरह प्रबंधकों एनाकोंडा जहाँ आप कर रहे हैं आप स्थापित doing-- अजगर के बाहर संकुल और फिर आप उन्हें अपने आप को चलाने के लिए प्रयास करें। तो यह वास्तव में अच्छा तरीका है। और install.packages इंटरनेट की आवश्यकता है। यह एक सर्वर से यह लेता है और रिपोजिटरी कि जमा करता है सब संकुल क्रैन कहा जाता है। और अगर आप आईने की जो प्रकार का निर्दिष्ट कर सकते हैं आप से संकुल डाउनलोड करना चाहते हैं। तो यहाँ मैं इस डाटासेट ले रहा हूँ। मैं इस समारोह का उपयोग करने में यह पढ़ रहा हूँ। तो मुझे आगे जाना है और उस करते हैं। तो चलो मान लेते हैं कि आप इस डाटासेट है और आप पूरी तरह से है यह क्या है पता नहीं। और यह वास्तव में ऊपर आता है काफी अक्सर उद्योग में तुम सिर्फ इन किया है जहां टन और गन्दा चीजों की टन और वे अविश्वसनीय रूप से लेबल हटाया गया हो। तो यहाँ मैं यह है डाटासेट और मैं नहीं जानता क्या यह इतना है कि मैं अभी कर रहा हूँ इसे बाहर की जाँच करने के लिए दिखा। तो मैं पहले सिर करने के लिए जा रहा हूँ। तो मैं पहले छह की जांच इस डाटासेट क्या है की स्तंभों। तो यह तो राज्य, pres04, और है कॉलम के इन सभी अलग तरह। और क्या दिलचस्प है यहाँ, मुझे लगता है, आप यह है कि इस लग रहा है कि ग्रहण करेंगे चुनाव के कुछ प्रकार की तरह। और मैं अभी से अनुमान फ़ाइल पर देख रहे हैं नाम इस संग्रह के कुछ प्रकार है उम्मीदवारों या मतदाताओं के बारे में डेटा की जो विशिष्ट राष्ट्रपतियों के लिए मतदान या राष्ट्रपति पद के उम्मीदवारों 2004 के चुनाव के लिए। तो यहाँ मूल्यों 1, 2 है इसलिए संचय के लिए एक ही रास्ता राष्ट्रपति पद के उम्मीदवारों उनके नाम हैं। इस मामले में, ऐसा लग रहा है वे सिर्फ पूर्णांक मान रहे हैं। 2004 तो, यह बुश था केरी बनाम मुझे विश्वास है। और अब, चलो तुम अभी पता नहीं है हम कहते हैं बुश या 2 के लिए एक मेल खाती है कि क्या केरी या और से मेल खाती है इतने पर और बहुत आगे है, है ना? और यह सिर्फ मेरे लिए है, एक बहुत ही आम समस्या है। तो अगर आप इस मामले में क्या कर सकते हैं? तो चलो इन सभी अन्य चीजों की जांच करते हैं। राज्य है, मैं इस मान रहा हूँ विभिन्न राज्यों से आता है। partyid, आय। के partyid में देखें। इसलिए हो सकता है कि आप क्या कर सकते हैं एक बात है टिप्पणियों से प्रत्येक को देखो कि रिपब्लिकन की एक partyid है डेमोक्रेट या कुछ या। तो चलो बस क्या है partyid को देखो। तो मैं ले जा रहा हूँ DAT और फिर मैं जा रहा हूँ इस डॉलर के हस्ताक्षर करने के लिए जैसा कि मैंने पहले किया था कि ऑपरेटर और इस के लिए जा रहा है उस स्तंभ के लिए सबसेट। और फिर मैं इस सिर करने के लिए जा रहा हूँ 20, बस इस तरह लग रहा है देखने के लिए। इसलिए इस NAS का एक गुच्छा है। तो दूसरे शब्दों में, आपके पास इन लोगों के बारे में डेटा गायब है। लेकिन अगर आप भी इस नोटिस DAT partyid एक कारक है तो यह है कि आप विभिन्न श्रेणियों देता है। तो दूसरे शब्दों में, partyid ले जा सकते हैं स्वतंत्र डेमोक्रेट, रिपब्लिकन, या कुछ और। तो चलो आगे जाना है और चलो चलो देखना इन is-- ओह, ठीक है की जो। इसलिए मैं सबसेट के लिए जा रहा हूँ फिर partyid और करने के लिए लोग कर रहे हैं, जिस पर दिखेगा डेमोक्रेट, उदाहरण के लिए। यह आपको एक बूलियन देने जा रहा है TRUEs और FALSEs की एक बड़ी बूलियन। और अब, मैं कहना चाहते हैं इन लोगों को सबसेट। तो यह मेरा DAT ले जा रहा है और सबसेट जो भी टिप्पणियों के लिए partyid बराबर होती है डेमोक्रेट के बराबर होती है। और इस वजह से काफी लंबे समय से है उनमें से बहुत सारे है। तो अब, मैं 20 में इस सिर करने के लिए जा रहा हूँ। तुम नोटिस के रूप में और, के बराबर होती है आप कर रहे हैं में दिलचस्प है कि already-- आप भी Nas सहित रहे हैं। तो इस मामले में, आप अभी भी नहीं मिल सकता किसी भी जानकारी अब आप NAS है क्योंकि और तुम सिर्फ देखना चाहते हैं की जो अवलोकन डेमोक्रेट के अनुरूप और इन लापता नहीं खुद को महत्व देता है। तो आप कैसे इन NAS से छुटकारा मिल जाएगा? यहाँ तो मैं बस पर कुंजी का उपयोग कर रहा हूँ मेरे कर्सर और फिर चारों ओर घूम रहा है कह रही है। और फिर यहाँ मैं बस जा रहा हूँ is.na datpartyid कहने के लिए। तो यह और और ले जाएगा दो अलग अलग बूलियन वैक्टर और यह होने जा रहा है कहना सच है और उदाहरण के लिए गलत। तो यह इस घटक के लिहाज से ऐसा करने के लिए जा रहा है। यहाँ तो मैं ले कह रहा हूँ डेटा फ्रेम, सबसेट डेमोक्रेट के अनुरूप है कि लोगों को, और एनए नहीं कर रहे हैं कि उनमें से किसी को हटा दें। इसलिए इस will-- चाहिए आप कुछ देना। के is.na. चलो देखते हैं के is.na datpartyid कोशिश करते हैं। और इस you-- देना चाहिए सिर्फ एक बूलियन वेक्टर sorry--। और फिर, यह इतने लंबे समय है, क्योंकि मैं 20 सबसेट के लिए जा रहा हूँ। ठीक है। तो यह काम करना चाहिए। और यह एक भी TRUEs किया जाएगा। आह, तो यहाँ मेरी त्रुटि है कि I'm-- मैं सी ++ और आर अदल-बदल तो मैं बनाने का उपयोग इस गलती को हर समय। और ऑपरेटर है वास्तव में आप चाहते हैं। तुम दोनों का उपयोग नहीं करना चाहते हैं एम्परसेंड, बस एक ही एक। ठीक है। तो चलो देखते हैं। तो हम करने के लिए subsetted partyid वे डेमोक्रेट कर रहे हैं जहां और वे मान अनुपलब्ध नहीं कर रहे हैं। और अब के हम देखते हैं जो वे के लिए मतदान वाले। इसलिए यह सबसे की तरह लगता है उनमें से एक के लिए मतदान किया। तो मैं आगे जाने के लिए जा रहा हूँ और कहा कि केरी का कहना है। और इसी तरह, आप कर सकते हैं यह भी रिपब्लिकन के लिए जाना और उम्मीद है कि, यह आप दो देना चाहिए। यह अलग कॉलम का सिर्फ एक गुच्छा है। और वास्तव में, यह 2 है। तो, सब रिपब्लिकन partyid उनमें से ज्यादातर 2 के लिए मतदान कर रहे हैं। तो यह तो बस की तरह लगता है इस पर देख कर, रिपब्लिकन होने जा रहा है एक very-- या partyid एक बहुत ही होने जा रहा है का निर्धारण करने में बड़ा कारक जो उम्मीदवार वे कर रहे हैं के लिए वोट करने के लिए जा रहा है। और यह सामान्य रूप में स्पष्ट रूप से सच है। और यह अपने मैच अंतर्ज्ञान, बिल्कुल। तो यह है कि मैं कर रहा हूँ की तरह लगता है ताकि समय से बाहर चल रहे मुझे बस आगे जाना चाहिए चलो और कुछ जल्दी छवियों को दिखाने के। यहाँ तो थोड़ा है कि कुछ है अधिक दृश्य के साथ जटिल। तो इस मामले में, यह एक बहुत है अभी जाँच की सरल विश्लेषण क्या '04 के अध्यक्ष हैं। इस मामले में तो, चलो आप कहते हैं कि इस सवाल का जवाब देना चाहता था। इसलिए हम मतदान जानना चाहता था कि लगता है 2004 के राष्ट्रपति चुनाव में व्यवहार और उस जाति से भिन्न होता है कि कैसे। इतना ही नहीं, आप करना चाहते हैं मतदान व्यवहार देख लेकिन आप प्रत्येक के सबसेट करना चाहते हैं जाति और तरह की है कि संक्षेप। और आप ही बता सकते हैं इस जटिल अंकन द्वारा यह उस तरह का धुंधला हो रही है। इसलिए अधिक उन्नत अनुसंधान में से एक हाल ही की तरह यह भी है कि संकुल dplyr कहा जाता है। तो यह ठीक है यहाँ यह एक है। और ggg-- ggplot2 सिर्फ एक अच्छा है बेहतर दृश्यावलोकन करने का तरीका निर्मित में एक से अधिक है। इसलिए मैं लोड करने के लिए जा रहा हूँ इन दो पुस्तकालयों। और फिर, मैं जा रहा हूँ आगे और इस आदेश को चलाते हैं। तुम सिर्फ एक ब्लैक बॉक्स के रूप में इस का इलाज कर सकते हैं। क्या हो रहा है इस पाइप यह है कि ऑपरेटर इस तर्क में गुजर रहा है यहाँ पर। इसलिए मैं डैट द्वारा समूह कह रहा हूँ जाति और तत्कालीन राष्ट्रपति 04। और फिर, इन सभी अन्य आदेशों छानने और फिर सारांश रहे हैं जहां मैं गिनती कर रहा हूँ और तो मैं इसे यहाँ की साजिश रचने कर रहा हूँ। शांत ठीक है। तो चलो आगे चलते हैं और इस तरह दिखता है क्या देखते हैं। तो क्या यहां हो रहा है कि मैं है अभी तो जातियों और के प्रत्येक साजिश रची जो वे के लिए मतदान वाले। और इन दो अलग-अलग मूल्यों 2 और 1 के अनुरूप हैं। यदि आप अधिक होना चाहते हैं सुरुचिपूर्ण, आप भी कर सकते हैं सिर्फ 2 Kerry-- या है कि निर्दिष्ट दो बुश है, और फिर एक केरी है। और तुम भी हो सकता है अपनी कथा में है। और तुम भी इन बार रेखांकन विभाजित कर सकते हैं। एक बात है, क्योंकि कि, अगर तुम नोटिस, इस की पहचान करने के लिए बहुत आसान नहीं है इन दो मूल्यों की जो बड़े होते हैं। तो आपको एक बात करना चाहती हूँ ऐसा इस नीले क्षेत्र ले रहा है और सिर्फ तुम तो यहाँ पर स्थानांतरित की ओर से इन दो पक्ष तुलना कर सकते हैं। और मुझे लगता है कि मैं कुछ का अनुमान अब ठीक करने के लिए समय नहीं है, लेकिन यह भी कहा कि ऐसा करने के लिए बहुत आसान है। तुम बस में देख सकते हैं ggplot का आदमी पृष्ठों की है। तो तुम सिर्फ तरह ggplot कर सकते हैं कि और इस आदमी पेज में पढ़ें। तो बस जल्दी से मुझे दो यदि आप कुछ ठंडी चीजें दिखाते हैं। के आगे जाना है और सिर्फ एक to-- चलते हैं मशीन सीखने के आवेदन। तो चलो हम इन तीन है कहते हैं संकुल तो मैं इन लोड करने के लिए जा रहा हूँ। तो यह सिर्फ कुछ बाहर प्रिंट जानकारी मैं बात में लोड करने के बाद। इसलिए मैं इस read.csv कह रहा हूँ, इस डाटासेट, और अब मुझे आगे जाना है और देखने के लिए और करने के लिए जा रहा हूँ इस डाटासेट अंदर क्या देखते हैं। पहले 20 टिप्पणियों तो। तो मैं सिर्फ यह तो x1, x2, और वाई है इन मूल्यों का एक झुंड की तरह लगता है शायद 20 से 80 या तो से लेकर कर रहे हैं। और फिर इसी तरह X2 के लिए और उसके बाद इस वाई लेबल 0 और 1 प्रतीत हो रहा है। यह सत्यापित करने के लिए, मैं कर सकता हूँ बस सारांश डेटा X1 करते हैं। और फिर इसी तरह के लिए इन सभी अन्य स्तंभों। तो सारांश एक त्वरित तरीका का है बस आप जल्दी मूल्यों दिखा। ओह, माफ करना। यह एक वाई होना चाहिए इस मामले में तो देता है, quantiles, medians के रूप में अच्छी तरह maxes। इस मामले में, dataY, आप देख सकते हैं यह सिर्फ शून्य और एक होने जा रहा है कि। इसके अलावा मतलब कह रहा है 0.6, सिर्फ यह मतलब है कि मैं 0 से अधिक 1s है की तरह लगता है। तो मुझे आगे और शो चलते हैं आप इस तरह लग रहा है। तो मैं सिर्फ इस साजिश करने के लिए जा रहा हूँ। चलो यह स्पष्ट करने के लिए कैसे देखते हैं। ओह ठीक है। ठीक है। तो यह है कि यह कैसा दिखता है। तो यह है कि मैं निर्दिष्ट पीली की तरह लगता है 0, और फिर लाल के रूप में मैं 1s के रूप में निर्दिष्ट। यहाँ तो ऐसा लग रहा है लेबल अंक और यह तुम सिर्फ कुछ करना चाहता था की तरह लगता है इस पर क्लस्टरिंग की तरह। और मुझे बस आगे और शो चलते हैं इन बिल्ट-इन कार्यों में से आप कुछ। तो यहाँ एलएम है। तो यह सिर्फ कोशिश कर रहा है इस के लिए एक लाइन फिट करने के लिए। तो क्या सबसे अच्छा तरीका है मैं एक पंक्ति में इस तरह फिट कर सकते हैं यह सबसे अच्छा अलग कर देगा कि क्लस्टरिंग के इस तरह के। और आदर्श, आप सिर्फ देख सकते हैं मैं तो बस इन सभी आदेशों चलने वाले और फिर, मैं जा रहा हूँ आगे और लाइन जोड़ सकते हैं। तो यह सबसे अच्छा अनुमान की तरह लगता है। यह कम से कम सबसे अच्छा है कि एक ले जा रहा है इस लाइन फिट करने की कोशिश में त्रुटि। जाहिर है, इस तरह का लग रहा है अच्छा है, लेकिन यह सबसे अच्छा नहीं है। और रेखीय मॉडल में जनरल, होने जा रहे हैं सिद्धांत के लिए और बस की तरह सच में बहुत अच्छा मशीन के निर्माण के बुनियादी बातों की सीखने। लेकिन व्यवहार में, आप करने जा रहे हैं अधिक सामान्य कुछ करना चाहते हैं। तो तुम सिर्फ चलाने की कोशिश कर सकते हैं कुछ एक तंत्रिका नेटवर्क कहा जाता है। ये बातें कर रहे हैं तेजी से और अधिक आम है। और वे सिर्फ सनक से काम बड़े डेटासेट के लिए। तो इस मामले में, हम केवल have-- हम nrow है see-- करते हैं। तो nrow सिर्फ पंक्तियों की संख्या कह रहा है। मैं इस मामले में तो 100 टिप्पणियों है। तो मुझे आगे चलते हैं और एक तंत्रिका नेटवर्क बनाने के। तो यह वास्तव में अच्छा है मैं सिर्फ nnet कह सकते हैं क्योंकि और फिर मैं वाई regressing रहा हूँ तो y कि स्तंभ है। और फिर उस पर regressing अन्य दो चर। तो यह कम है X1 और X2 के लिए अंकन। तो चलो आगे जाना है और इस चलाते हैं। ओह, माफ करना। मैं इस पूरे काम चलाने की जरूरत है। और यह सिर्फ अंकन मुद्रण है कितनी जल्दी या नहीं जल्दी के लिए यह जुटे। तो यह है कि यह एकाग्र किया था की तरह लग रहा है। तो मुझे आगे और प्रिंट जाने दो इस तरह दिखता है क्या बाहर। यहाँ तस्वीर है और यहाँ है देखें यह हो गया है कि कैसे अच्छी तरह से दिखा एक समोच्च। और यह आप देख सकते हैं just-- है इस लिए यह बहुत, बहुत अच्छा है। यह भी हो सकता है आप भी कर सकते हैं overfitting, लेकिन अन्य के साथ इस के लिए खाते पार सत्यापन तरह की तकनीक। और ये भी आर में बनाया जाता है और सिर्फ तुम्हें दिखाने के लिए मुझे जाने वेक्टर मशीन समर्थन करते हैं। यह एक और वास्तव में आम है मशीन सीखने में तकनीक। यह रेखीय मॉडल के समान है लेकिन यह एक कर्नेल विधि कहा जाता है का उपयोग करता है। और चलो करता है कि कैसे अच्छी तरह से देखते हैं। तो यह एक कैसे करने के लिए बहुत समान है अच्छी तरह से एक तंत्रिका नेटवर्क, प्रदर्शन करती है लेकिन यह बहुत अधिक चिकनी है। और इस आधार पर है की कैसे SVMs काम what--। तो यह सिर्फ एक बहुत कुछ का त्वरित अवलोकन बिल्ट-इन कार्यों में से आप कर सकते हैं और भी डेटा अन्वेषण के कुछ। तो मुझे बस आगे चलते हैं और स्लाइड के लिए वापस जाओ। तो जाहिर है, यह है बहुत व्यापक नहीं। और यह सच में सिर्फ एक नमूना है क्या तुम सच में आर में क्या कर सकते हैं आपको दिखा तो तुम सिर्फ चाहते हैं तो यहां, और जानने के लिए विभिन्न संसाधनों का एक गुच्छा रहे हैं। आप पाठ्यपुस्तकों के शौकीन रहे हैं या आप कर रहे हैं तो अगर सिर्फ बातें ऑनलाइन पढ़ने के शौकीन, तो यह एक शानदार है हैडली Wickham के बाद एक, भी बनाई गई है जो इन सभी वास्तव में अच्छा पैकेज। आप वीडियो के शौकीन हैं, तो बर्कले एक भयानक bootcamp है उस तरह की लंबी है several-- है। और यह लगभग तुम्हें सिखाऊँगा सब कुछ आप आर के बारे में पता करना चाहते हैं और इसी तरह, Codeacademy वहाँ और इन सभी अन्य प्रकार के इंटरैक्टिव वेबसाइटों। उन्होंने यह भी हो रही है अधिक से अधिक आम common--। इसलिए इस Codeacademy के समान है। और अंत में, आप अगर बस सामुदायिक चाहते हैं और मदद, इनमें से एक गुच्छा रहे हैं आप के लिए जा सकते हैं बातें। जाहिर है, हम अभी भी बस, मेलिंग सूचियों का उपयोग लगभग हर दूसरे तरह प्रोग्रामिंग भाषा समुदाय। और #rstats, यह है हमारे समुदाय चहचहाना। यही कारण है कि वास्तव में काफी आम है। और तब उपयोगकर्ता! बस हमारे सम्मेलन है। और फिर, ज़ाहिर है, आप कर सकते हैं इन सभी अन्य क्यू एंड ए चीजों का उपयोग, पोट अतिप्रवाह की तरह, गूगल, और फिर GitHub। इन पैकेजों में से सबसे अधिक है क्योंकि और समुदाय का एक बहुत विकासशील आसपास केंद्रित किया जाएगा कोड यह खुला स्रोत है क्योंकि। और यह GitHub पर सिर्फ सच में अच्छा है। और अंत में, यदि आप मुझसे संपर्क कर सकते हैं आप बस किसी भी त्वरित सवाल हैं। तो तुम यहाँ चहचहाना पर मुझे पा सकते हैं, मेरी वेबसाइट, और बस अपने ईमेल करें। इसलिए उम्मीद है कि, यह था कि something-- बस एक छोटी चिढ़ाने क्या अनुसंधान कर रही है वास्तव में सक्षम है। और उम्मीद है, आप बस इन तीन लिंक की जाँच और आप और अधिक क्या कर सकते हैं। और मुझे लगता है कि अभी इसके बारे में लगता है। शुक्रिया। [वाहवाही]