सामग्री पर जाएँ
cd /languages
  • सांख्यिकीय कंप्यूटिंग
  • प्रोग्रामिंग
  • AST और सिंबल सपोर्ट

Maguyva में R: एनालिसिस और पैकेज कोड के लिए कोड ग्राफ़

Maguyva, R को AST, सिंबल और ग्राफ़ के साथ सपोर्ट करता है, ताकि AI एजेंट R स्क्रिप्ट और पैकेज के पार फ़ंक्शन, S3 और S4 डिस्पैच, और मॉडल-फ़िटिंग कॉल को ट्रेस कर सकें।

R सतही AI टूल को कहाँ उलझाती है

R बेस फ़ंक्शन, पैकेज फ़ंक्शन और आपके फ़ंक्शन को एक ही सपाट नेमस्पेस में रखती है। डॉट नाम का हिस्सा है, सदस्य एक्सेस नहीं: is.na, data.frame और print.summary_table एकल पहचानकर्ता हैं। जो टूल print.summary_table को print पर एक मेथड की तरह पढ़ता है, वह संरचना को गलत समझता है, और जो टूल हर बेस कॉल दर्ज करता है, वह आपके फ़ंक्शन को c() और paste() के नीचे दबा देता है।

Maguyva R नामों को पूरा रखता है और बेस फ़ंक्शन के शोर को फ़िल्टर करता है, ताकि एजेंट वे फ़ंक्शन देखे जिन पर आपका एनालिसिस सच में निर्भर है।

Maguyva, R से क्या निकालता है

Maguyva .R, .Rmd और .Rnw फ़ाइलों को R से जोड़ता है। किसी नाम को असाइन किए गए फ़ंक्शन, जैसे clean_survey <- function(df), उसी नाम से निकाले जाते हैं; अनाम फ़ंक्शन को परिभाषा नहीं माना जाता। डॉट वाले नाम कभी रिसीवर और सदस्य में नहीं तोड़े जाते।

कुछ बेस R कॉल जानबूझकर ग्राफ़ में रखे जाते हैं क्योंकि वे दिखाते हैं कि एनालिसिस कोड आपस में कैसे जुड़ा है: S3 और S4 डिस्पैच (UseMethod, standardGeneric), apply परिवार (lapply, sapply, vapply, mapply), मॉडल फ़िटिंग (lm, predict, anova), पैकेज लोडिंग (library, require), और tryCatch से एरर हैंडलिंग।

ग्राफ़ इंस्टैंशिएशन और रीड तथा राइट भी दर्ज करता है।

एजेंट प्रॉम्प्ट के उदाहरण

  • “clean_survey को कौन कॉल करता है, और कौन-से मॉडल उसका आउटपुट इस्तेमाल करते हैं?” (find_symbol, फिर dependency_search इनकमिंग)
  • “कौन-से फ़ंक्शन fit_model को कॉल करते हैं?” (dependency_search)
  • “load_raw_data से अंतिम रिग्रेशन तक का रास्ता ट्रेस करो।” (get_task_context)

ज्ञात सीमाएँ

  • बेस R, stats और graphics के लगभग 800 नाम संबंधों से फ़िल्टर किए जाते हैं, जैसे print, paste, c, data.frame, प्लॉटिंग कॉल और रैंडम-नंबर जनरेटर। इनके लिए text_pattern_search इस्तेमाल करें।
  • R सामान्य फ़ंक्शन कॉल से क्लास बनाती है और पैकेज लोड करती है, इसलिए structural_search में classes, imports और variables प्रीसेट कुछ भी नहीं चुनते। find_symbol और text_pattern_search इस्तेमाल करें।
  • .Rmd और .Rnw फ़ाइलें चंक के हिसाब से नहीं, पूरी तरह R ग्रामर से पढ़ी जाती हैं; R Markdown और Sweave दस्तावेज़ों में अधूरे नतीजों की अपेक्षा करें।
  • R में डेकोरेटर सिंटैक्स नहीं है, इसलिए डेकोरेटर संबंध लागू नहीं के रूप में चिह्नित हैं।

अगले कदम

क्विकस्टार्ट से रिपॉज़िटरी जोड़ें, फिर सपोर्ट मैट्रिक्स कम्पैटिबिलिटी पेज पर देखें। मिश्रित डेटा-साइंस रिपॉज़िटरी के लिए Python गाइड भी पढ़ें।

सबसे उपयुक्त

  • > कई एक्सपोर्ट किए गए फ़ंक्शन, S3 मेथड और आंतरिक हेल्पर वाले R पैकेज।
  • > ऐसी एनालिसिस पाइपलाइन जो डेटा-क्लीनिंग और मॉडलिंग फ़ंक्शन साझा करने वाली स्क्रिप्ट में बँटी हैं।
  • > ऐसी डेटा टीमें जो R कोड उन AI एजेंट को देती हैं जिन्हें देखना होता है कि कौन-से फ़ंक्शन किन मॉडल को डेटा देते हैं।

एजेंट वर्कफ़्लो

  • > किसी डेटा-क्लीनिंग फ़ंक्शन के लौटाए कॉलम बदलने से पहले उसके सभी कॉलर ढूँढना।
  • > ट्रेस करना कि कौन-से फ़ंक्शन `UseMethod` से डिस्पैच करते हैं और उनके मेथड कहाँ हैं।
  • > कच्चा डेटा लोड करने से लेकर फ़िट किए गए मॉडल तक का रास्ता मैप करना।

इंजन विवरण

  • > R सपोर्ट `.R`, `.Rmd` और `.Rnw` फ़ाइलों को R से जोड़ता है। किसी नाम को असाइन किए गए फ़ंक्शन उसी नाम से निकाले जाते हैं, और `data.frame` जैसे डॉट वाले नाम पूरे रहते हैं।
  • > S3 और S4 डिस्पैच (`UseMethod`, `standardGeneric`), apply परिवार, `lm`, `predict` और `tryCatch` जानबूझकर ग्राफ़ में रखे जाते हैं।
  • > बेस R, `stats` और `graphics` के लगभग 800 नाम, जैसे `print`, `paste` और `c`, संबंधों से फ़िल्टर किए जाते हैं।

उपयोगी MCP एंट्री पॉइंट

  • find_symbol

    किसी क्लीनिंग, मॉडलिंग या S3 मेथड नाम के लिए इस्तेमाल करें जब आपको परिभाषा और कॉलर चाहिए।

  • dependency_search

    किसी हेल्पर का आउटपुट बदलने से पहले यह देखने के लिए इनकमिंग ट्रैवर्सल इस्तेमाल करें कि कौन-से एनालिसिस उस पर निर्भर हैं।

  • get_task_context

    "कच्चा डेटा लोड करने से अंतिम रिग्रेशन तक का रास्ता ट्रेस करो" जैसे प्रॉम्प्ट के लिए इस्तेमाल करें।

संबंधित गाइड

रिपॉज़िटरी के संबंधित हिस्से

सभी गाइड ब्राउज़ करें