दिलचस्प पोस्ट
डेल्फी क्या "कीवर्ड" के साथ एक खराब अभ्यास है? क्या छिपाना / सांकेतिक शब्दों में बदलना / एन्क्रिप्ट php स्रोत कोड संभव है और दूसरों को सिस्टम है? जावा में चेतावनी "एन्कोडिंग के लिए अनुपम वर्ण" एस्केप @ चरित्र में जीआईटी प्रॉक्सी पासवर्ड सी ++: क्यों bool 8 बिट लंबा है? __cmp__ के बजाय __lt__ WPF में आप बिना संग्रह कोड को संग्रहित कर सकते हैं? डीआरएफ: नेस्टेड सीरियलइज़र के साथ सरल विदेशी कुंजी असाइनमेंट? क्या यह नोड.जेएस के भीतर से बाहरी प्रोग्राम को निष्पादित करना संभव है? आईओएस: ऐप इंस्टॉल करते समय ऐप उपयोगकर्ता की अनुमति नहीं मांग रहा है हर बार kCLAuthorizationStatusNot हो रही है – उद्देश्य-सी और स्विफ्ट कस्टम रंगमॅप को प्रोग्राम बनाने के लिए कैसे करें? मैं विस्तारित PHP वर्ग में एक स्थिर कॉल से क्लासनाम कैसे प्राप्त करूं? क्या मैं आराम के बारे में नहीं समझ रहा हूँ? किंवदंती के साथ Matplotlib तितर बितर प्लॉट डेक्स निष्पादित करने में असमर्थ: जीसी ओवरहेड की सीमा एक्लिप्स में पार हो गई है

आर प्रोग्रामिंग भाषा में ~ (टिल्ड) का प्रयोग करें

मैं निम्न कमांड के प्रतिगमन मॉडलिंग के बारे में एक ट्यूटोरियल में देखा था:

myFormula <- Species ~ Sepal.Length + Sepal.Width + Petal.Length + Petal.Width 

यह आदेश वास्तव में क्या करता है, और कमांड में ~ (टिल्ड) की भूमिका क्या है?

वेब के समाधान से एकत्रित समाधान "आर प्रोग्रामिंग भाषा में ~ (टिल्ड) का प्रयोग करें"

<- दाईं ओर की चीज <- एक formula वस्तु है। यह अक्सर एक सांख्यिकीय मॉडल को दर्शाने के लिए उपयोग किया जाता है, जहां पर बाईं तरफ की चीज़ प्रतिक्रिया होती है और "के दाईं ओर की बातें स्पष्ट व्याख्यात्मक हैं।" तो अंग्रेजी में आप कुछ कह सकते हैं "प्रजातियां सेपुल लंबाई, अलग-अलग चौड़ाई, पत्ती की लंबाई और पेटल चौड़ाई पर निर्भर करता है"

myFormula <- उस पंक्ति का हिस्सा एक वस्तु में फार्मूला को स्टोर करता है जिसका नाम myFormula ताकि आप इसे अपने आर कोड के अन्य भागों में उपयोग कर सकें।


आर में सूत्र वस्तुओं के अन्य सामान्य उपयोग

साजिश के लिए चर को निर्दिष्ट करने के लिए lattice पैकेज का उपयोग करता है।
ggplot2 लिए पैनल निर्दिष्ट करने के लिए ggplot2 पैकेज उनका उपयोग करता है।
dplyr पैकेज उन्हें गैर-मानक dplyr लिए उपयोग करता है

आर सूत्रों में उपयोग के लिए एक ~ (टिल्ड) ऑपरेटर को परिभाषित करता है सूत्रों के सभी प्रकार के उपयोग हैं, लेकिन शायद सबसे अधिक प्रतिगमन के लिए है:

 library(datasets) lm( myFormula, data=iris) 

help("~") या help("formula") आपको अधिक सिखाना होगा।

@ स्पेसमेन ने मूल बातें शामिल की हैं चलो चर्चा कैसे यह काम करता है

सबसे पहले, एक ऑपरेटर होने के नाते, ध्यान रखें कि यह अनिवार्य रूप से फ़ंक्शन के लिए एक शॉर्टकट है (दो तर्कों के साथ):

 > `~`(lhs,rhs) lhs ~ rhs > lhs ~ rhs lhs ~ rhs 

उपयोग में जानने के लिए यह उपयोगी हो सकता है जैसे परिवार के आदेशों का उपयोग करें

दूसरा, आप सूत्र के रूप में पाठ को हेरफेर कर सकते हैं:

 oldform <- as.character(myFormula) # Get components myFormula <- as.formula( paste( oldform[2], "Sepal.Length", sep="~" ) ) 

तीसरा, आप इसे एक सूची के रूप में हेरफेर कर सकते हैं:

 myFormula[[2]] myFormula[[3]] 

अंत में, सूत्रों के साथ कुछ उपयोगी युक्तियाँ help("formula") अधिक के लिए help("formula") देखें):

 myFormula <- Species ~ . 

उदाहरण के लिए, उपरोक्त संस्करण मूल संस्करण के समान है, क्योंकि डॉट का अर्थ है "सभी चर अभी तक उपयोग नहीं किए गए हैं।" यह आपके अंतिम मॉडल कॉल में उपयोग किए जाने वाले डेटा। फ़्रेम पर दिखता है, यह देखता है कि डेटा में कौन-सी चर मौजूद हैं। फ़्रेम लेकिन आपके सूत्र में स्पष्ट रूप से उल्लिखित नहीं हैं, और उन लापता चर के साथ डॉट को बदल देता है।