कुछ मूल्यवान सांख्यिकीय विश्लेषण ओपन सोर्स प्रोजेक्ट क्या हैं?


69

अभी कुछ मूल्यवान सांख्यिकीय विश्लेषण ओपन सोर्स प्रोजेक्ट उपलब्ध हैं?

संपादित करें: जैसा कि शार्पी द्वारा बताया गया है, मूल्यवान का मतलब हो सकता है कि आप चीजों को तेजी से या अधिक सस्ते में प्राप्त करने में मदद करें।


5
तर्क और व्यक्तिपरक के लिए एक पोस्टर बच्चा हो सकता है। कम से कम, 'मूल्यवान' को परिभाषित करने की आवश्यकता है।
शार्प

2
हो सकता है कि ध्यान प्रत्येक परियोजना के "मूल्यवान" पर नहीं बल्कि "पेशेवरों" और "विपक्ष" पर होना चाहिए?
एक शेर

या शायद यहां तक ​​कि "कैसे एक्स आपको वाई / तेज या सस्ता करने में मदद करेगा और उन कीटाणुओं को मार देगा जो खराब सांस लेते हैं।"
Sharpie

जवाबों:


88

आर-प्रोजेक्ट

http://www.r-project.org/

आर मूल्यवान और महत्वपूर्ण है क्योंकि यह बड़े बॉक्स पैकेजों के लिए पहला व्यापक रूप से स्वीकृत ओपन-सोर्स विकल्प था। यह परिपक्व है, अच्छी तरह से समर्थित है, और कई वैज्ञानिक समुदायों के भीतर एक मानक है।


हां, आर अच्छा है- लेकिन यह 'मूल्यवान' क्यों है।
शार्प

11
यह परिपक्व है, अच्छी तरह से समर्थित है, और कुछ वैज्ञानिक समुदायों के भीतर एक मानक है (उदाहरण के लिए हमारे एआई विभाग में लोकप्रिय)
मेनो जू

10
यह एक्स्टेंसिबल है और इसमें कोई सांख्यिकीय तकनीक नहीं है जो इसमें नहीं किया जा सकता है।
एएल 3xa

20

पायथन में कई प्रकार के MCMC कार्य करने के लिए, वहाँ PyMC है , जिसे मैंने काफी उपयोग से बाहर कर दिया है। मैंने कुछ भी नहीं चलाया है जो मैं BUGS में कर सकता हूं जो मैं PyMC में नहीं कर सकता, और जिस तरह से आप मॉडल निर्दिष्ट करते हैं और डेटा लाते हैं वह मुझे बहुत अधिक सहज लगता है।


18

यह विस्मरण का कारण हो सकता है, लेकिन मैंने कई वर्षों तक मैटलैब क्लोन ऑक्टेव का खुशी से इस्तेमाल किया । विभिन्न वितरणों, सांख्यिकीय परीक्षणों आदि से यादृच्छिक चर की पीढ़ी के लिए ऑक्टेव फोर्ज में काफी अच्छे पुस्तकालय हैं, हालांकि स्पष्ट रूप से यह आर द्वारा बौना है। आर पर एक संभावित लाभ यह है कि संख्यात्मक विश्लेषकों, अनुकूलन शोधकर्ताओं के बीच मैटलैब / ऑक्टेव भाषाई फ़्रैंका है । , और लागू गणितज्ञों के कुछ सबसेट (कम से कम जब मैं स्कूल में था), जबकि मेरे विभाग में कोई भी, मेरी जानकारी के लिए, मेरे नुकसान का उपयोग नहीं करता था। यदि संभव हो तो दोनों सीखें!


4
सच्ची टिप्पणी। लेकिन एक अनुभवी प्रोग्रामर के रूप में मैं हर बार मैटलैब / ऑक्टेव का उपयोग करने में गंदा महसूस करता हूं, जो कि एक भयानक रूप से डिजाइन किया गया है (यदि यह बिल्कुल डिज़ाइन किया गया है) भाषा। बेशक, मैं एसएएस में भी ऐंठन करता हूं, जो स्पष्ट रूप से छिद्रित कार्ड के लिए डिज़ाइन किया गया था।
वेन

1
@ सत्य ही काफी है। मुझे याद है कि एक बार बॉब हार्पर ने मतलबी भाषा को 'शब्दार्थिक रूप से संदेहास्पद' के रूप में संदर्भित करते हुए सुना था;) कई भाषाओं के साथ, हालांकि, एक बार जब आप इसका पर्याप्त उपयोग करते हैं, तो आप इसकी विषमताओं का सामना करना सीख जाते हैं।
shabbychef

17

दो परियोजनाओं वसंत मन:

  1. कीड़े - (कुछ) को बायेसियन आँकड़ों से बाहर निकालते हुए। यह उपयोगकर्ता को मॉडल पर अधिक ध्यान केंद्रित करने और MCMC पर थोड़ा कम करने की अनुमति देता है।
  2. बायोकॉन्सेटर - जैव सूचना विज्ञान में शायद सबसे लोकप्रिय सांख्यिकीय उपकरण। मुझे पता है कि यह एक आर रिपॉजिटरी है, लेकिन बड़ी संख्या में लोग हैं जो आर सीखना चाहते हैं, बस बायोकॉन्टर के लिए। धार विश्लेषण के लिए उपलब्ध पैकेजों की संख्या, इसे किसी से भी पीछे नहीं बनाती है।

1
एंड्रयू गेलमैन के पास एक अच्छी आर लाइब्रेरी है जो बग्स को आर। के साथ
जोड़ती है

4
मुझे लगता है कि "बायोइनफॉरमैटिक्स में सबसे लोकप्रिय सांख्यिकीय उपकरण" फिर से लिखना होगा ... माइक्रोएरे विश्लेषण कर रहे बायोइन्फ़ॉर्मेटिशियन इसका बड़े पैमाने पर उपयोग करते हैं, हाँ। लेकिन बायोइनफॉरमैटिक्स यहीं तक सीमित नहीं है;)
निको जूल

15

डेटा खनन के लिए Weka - जावा में कई वर्गीकरण और क्लस्टरिंग एल्गोरिदम शामिल हैं।


इसका प्रदर्शन कैसा है? (मैं चिल्लाता हूं जब भी मैं 'जावा' शब्द देखता हूं ...)
shabbychef

@shabbychef मैंने जो सुना है उससे काफी अच्छा है, लेकिन आम तौर पर वीका का उपयोग कई एल्गोरिदम का परीक्षण करने और दिए गए डेटा सेट (या एक सबसेट) पर उनके प्रदर्शन को देखने के लिए पहले कदम के रूप में किया जाता है, फिर एक कोर प्रोग्राम का हिस्सा फिर से बनाया जाता है। इसकी दक्षता को अनुकूलित करें (उदाहरण के लिए क्रॉस-सत्यापन या बूटस्ट्रैपिंग के लिए उच्च-आयामी डेटा कॉलिंग के साथ), कभी-कभी सी या पायथन में।
CHL

2
@shabbychef: जावा प्रोग्राम में धीमे राक्षस नहीं होते। मैं स्वीकार करता हूं कि अच्छी तरह से लिखा गया सी-कोड जावा में समान कार्यान्वयन की तुलना में लगभग हमेशा तेज होगा, लेकिन अच्छी तरह से लिखा गया जावा कोड सुपर स्लो नहीं होगा। इसके अलावा जावा में विकसित करने के कई महत्वपूर्ण फायदे हैं।
posdef


14

Incanter सांख्यिकीय कंप्यूटिंग और ग्राफिक्स के लिए क्लोजर -आधारित, आर- लाइक प्लेटफॉर्म (पर्यावरण + लाइब्रेरी) है।


फिर से- क्यों? मैं अपने बॉस को इस ओवर का उपयोग करने के लिए कैसे कहूंगा, एक्सेल।
शार्प जूल

4
यदि एक्सेल से आगे बढ़ना मुद्दा है, तो आप कोशिश कर सकते हैं: * coventry.ac.uk/ec/~nhunt/pottel.pdf * फोरकास्टिंगप्रिंट्स . com/files/McCullough.pdf * lomat.org/Math/Papers/2007/Excel2007/ Excel2007Bug.pdf * csdassn.org/software_reports/gnumeric.pdf
जेम्स

1
@ जेम्स + j.mp/9fVmtV , j.mp/aNDyf2 , j.mp/9Gzzri :-)
chl

14

एफएसएफ द्वारा शुरू की गई परियोजनाएं भी हैं या जीएनयू जनरल पब्लिक लाइसेंस के तहत पुनर्वितरित की गई हैं, जैसे:

  • PSPP जिसका उद्देश्य SPSS के लिए एक मुफ्त विकल्प होना है
  • GRETL , ज्यादातर प्रतिगमन और अर्थमिति के लिए समर्पित है

यहां तक ​​कि ऐसे एप्लिकेशन भी हैं जो सिर्फ एक टेक्स्टबुक के लिए एक साथी सॉफ्टवेयर के रूप में जारी किए गए थे, जैसे कि JMulTi , लेकिन अभी भी कुछ लोगों के लिए उपयोग में हैं।

मैं अभी भी समय-समय पर xlispstat के साथ खेल रहा हूं , हालांकि Lisp को R द्वारा बड़े पैमाने पर दबाया गया है ( सांख्यिकीय सॉफ्टवेयर के जर्नल में Lisp बनाम R पर Jan de Leeuw का अवलोकन देखें )। दिलचस्प बात यह है कि आर भाषा के कॉफाउंडर्स में से एक, रॉस इहाका ने इसके विपरीत तर्क दिया कि सांख्यिकीय सॉफ्टवेयर का भविष्य है ... लिस्प: बैक टू द फ्यूचर: लिस्प एक सांख्यिकीय कम्प्यूटिंग सिस्टम के लिए एक आधार के रूप में । @ एलेक्स ने पहले से ही क्लोजर-आधारित सांख्यिकीय पर्यावरण इंकेटर की ओर इशारा किया है , इसलिए शायद हम निकट भविष्य में लिस्प-आधारित सॉफ्टवेयर का पुनरुद्धार देखेंगे? :-)



9

सबसे पहले मैं आपको बता दूं कि मेरी राय में अब तक का सबसे अच्छा उपकरण आर है, जिसमें बहुत सारे पुस्तकालय और उपयोगिताओं हैं जो मैं यहां नहीं जाना चाहूंगा।

मुझे वीका के बारे में चर्चा का विस्तार करने दें

R के लिए एक पुस्तकालय है, जिसे RWeka कहा जाता है, जिसे आप R में आसानी से स्थापित कर सकते हैं, और R के लोगों के साथ इस महान कार्यक्रम से कई कार्यक्षमताओं का उपयोग कर सकते हैं, मैं आपको एक सरल निर्णय पेड़ बनाने के लिए एक कोड उदाहरण देता हूं। एक मानक डेटाबेस से पढ़ें जो इस पैकेज के साथ आता है (परिणामी पेड़ को आकर्षित करना भी बहुत आसान है लेकिन मैं आपको यह करने के लिए शोध करने जा रहा हूं कि यह कैसे करना है, जो कि आरवेका प्रलेखन में है:

library(RWeka)
iris <- read.arff(system.file("arff", "iris.arff", package = "RWeka"))
classifier <- IBk(class ~., data = iris)
summary(classifier)

ऐसा करने के लिए कई अजगर पुस्तकालय भी हैं (अजगर सीखना बहुत आसान है)

पहले मुझे आपके द्वारा उपयोग किए जाने वाले पैकेजों की गणना करने दें, मैं उनके बारे में विस्तार से नहीं जा रहा हूं; वीका (हाँ, आपके पास अजगर के लिए एक पुस्तकालय है), एनएलकेटी (टेक्सटाइनिंग के लिए सबसे प्रसिद्ध ओपन सोर्स पैकेज) के अलावा, स्टैपी , बीमार , और डरपोक

नारंगी भी है जो उत्कृष्ट है (मैं इसके बारे में भी बाद में बात करूंगा), यहां तालिका cmpart1 में डेटा से एक पेड़ करने के लिए एक कोड उदाहरण है, जो 10 गुना तह सत्यापन भी करता है, आप पेड़ को भी ग्राफ कर सकते हैं

import orange, orngMySQL, orngTree

data = orange.ExampleTable("c:\\python26\\orange\\cmpart1.tab")

domain=data.domain
n=10
buck=len(data)/n
l2=[]
for i in range(n):
    tmp=[]
    if i==n-1:
        tmp=data[n*buck:]
    else:
        tmp=data[buck*i:buck*(i+1)]
    l2.append(tmp)

train=[]
test=[]
di={'yy':0,'yn':0,'ny':0,'nn':0}
for i in range(n):
    train=[]
    test=[]
    for j in range(n):
        if j==i:
            test=l2[i]
        else:
            train.extend(l2[j])
    print "-----"
    trai=orange.Example(domain, train)
    tree = orngTree.TreeLearner(train)
    for ins in test:
        d1= ins.getclass()
        d2=tree(ins)
        print d1
        print d2
        ind=str(d1)+str(d2)
        di[ind]=di[ind]+1
print di

कुछ अन्य पैकेजों के साथ समाप्त करने के लिए जिनका मैंने उपयोग किया और दिलचस्प पाया

नारंगी : नौसिखिए और विशेषज्ञों के लिए डेटा विज़ुअलाइज़ेशन और विश्लेषण। दृश्य प्रोग्रामिंग या पायथन स्क्रिप्टिंग के माध्यम से डेटा खनन। मशीन सीखने के लिए घटक। जैव सूचना विज्ञान और पाठ खनन के लिए एक्सटेंशन। (मैं व्यक्तिगत रूप से इसे पुनः प्राप्त करता हूं, मैंने इसे अजगर में एकीकृत करने के लिए बहुत उपयोग किया था और यह बहुत अच्छा था) यदि आप मुझे चाहते हैं तो मैं आपको कुछ अजगर कोड भेज सकता हूं।

ROSETTA : मोटे सेट सिद्धांत के ढांचे के भीतर सारणीबद्ध डेटा का विश्लेषण करने के लिए टूलकिट। ROSETTA को समग्र डेटा खनन और ज्ञान खोज प्रक्रिया का समर्थन करने के लिए डिज़ाइन किया गया है: डेटा के प्रारंभिक ब्राउज़िंग और प्रीप्रोसेसिंग से, कम से कम विशेषता सेट की गणना और यदि-तब नियमों या वर्णनात्मक पैटर्न की पीढ़ी के माध्यम से, प्रेरित नियमों या पैटर्न के सत्यापन और विश्लेषण के लिए। । (मुझे भी इसका इस्तेमाल करने में बहुत मज़ा आया)

केईएल : प्रतिगमन, वर्गीकरण, क्लस्टरिंग, पैटर्न खनन और इतने पर सहित डेटा माइनिंग समस्याओं के लिए विकासवादी एल्गोरिदम का आकलन करें। यह हमें मौजूदा लोगों की तुलना में किसी भी सीखने के मॉडल का पूर्ण विश्लेषण करने की अनुमति देता है, जिसमें तुलना के लिए एक सांख्यिकीय परीक्षण मॉड्यूल भी शामिल है।

DataPlot : वैज्ञानिक दृश्य, सांख्यिकीय विश्लेषण और गैर-रेखीय मॉडलिंग के लिए। लक्ष्य डाटाप्लॉट उपयोगकर्ता शोधकर्ता और विश्लेषक है जो वैज्ञानिक और इंजीनियरिंग प्रक्रियाओं के लक्षण, मॉडलिंग, विज़ुअलाइज़ेशन, विश्लेषण, निगरानी और अनुकूलन में लगे हुए हैं।

Openstats : एक सांख्यिकी और माप प्राइमर, वर्णनात्मक सांख्यिकी, सरल तुलना, भिन्न का विश्लेषण, सहसंबंध, एकाधिक प्रतिगमन, बाधित समय श्रृंखला, बहुभिन्नरूपी सांख्यिकी, गैर-पैरामीटर सांख्यिकी, मापन, सांख्यिकीय प्रक्रिया नियंत्रण, वित्तीय प्रक्रिया, तंत्रिका नेटवर्क, सिमुलेशन शामिल हैं


8

कॉलिन गिलेस्पी ने BUGS का उल्लेख किया, लेकिन गिब्स सैंपलिंग आदि के लिए एक बेहतर विकल्प, JAGS है

यदि आप सभी ARIMA करना चाहते हैं, तो आप X12-ARIMA को नहीं हरा सकते हैं , जो कि मैदान और ओपन सोर्स में एक स्वर्ण-मानक है। यह वास्तविक रेखांकन नहीं करता है (मैं आर का उपयोग करने के लिए करता हूं), लेकिन डायग्नोस्टिक्स अपने आप में एक सबक हैं।

हाल ही में खोजे गए कुछ और के लिए थोड़ा आगे बढ़ना और अभी सीखना शुरू किया है ...

ADMB (AD Model Builder), जो MCMC और कुछ अन्य विशेषताओं के साथ AUTODIF लाइब्रेरी पर आधारित गैर-रेखीय मॉडलिंग करता है। यह प्रीप्रोसेस करता है और मॉडल को C ++ निष्पादन योग्य बनाता है और इसे स्टैंडअलोन ऐप के रूप में संकलित करता है, जो कि है। R, MATLAB, आदि ADMB प्रोजेक्ट में लागू किए गए समकक्ष मॉडल की तुलना में तेज़ तरीका माना जाता है

यह शुरू हुआ और अभी भी मछली पालन की दुनिया में सबसे लोकप्रिय है, लेकिन अन्य उद्देश्यों के लिए काफी दिलचस्प लग रहा है। इसमें R की रेखांकन या अन्य विशेषताएं नहीं हैं, और संभवतः R के साथ संयोजन में इसका उपयोग किया जाएगा।

यदि आप एक GUI में बायेसियन नेटवर्क के साथ काम करना चाहते हैं: SamIam एक अच्छा उपकरण है। R के पास कुछ पैकेज हैं जो ऐसा करते भी हैं, लेकिन SamIam बहुत अच्छा है।


7

आप में से जो C / C ++ में प्रोग्राम करना चाहते हैं, उनके लिए GSL एक मूल्यवान संसाधन है क्योंकि यह यादृच्छिक जनरेटर, रैखिक बीजगणित आदि के लिए कई मार्ग प्रदान करता है, जबकि GSL मुख्य रूप से लिनक्स के लिए उपलब्ध है विंडोज के लिए पोर्ट भी हैं। (देखें: http://gladman.plushost.co.uk/oldsite/computing/gnu_scientific_library.php और http://david.geldreich.free.fr/dev.html )


7

मैं वास्तव में साथ काम करने का आनंद RooFit संकेत और पृष्ठभूमि वितरण और की आसान उचित फिटिंग के लिए TMVA त्वरित प्रमुख घटक के लिए विश्लेषण करती है और कुछ मानक उपकरण (आनुवंशिक एल्गोरिथम और तंत्रिका नेटवर्क की तरह, यह भी BDTs करता है) के साथ मल्टीवेरिएट समस्याओं की मॉडलिंग। वे दोनों ROOT C ++ पुस्तकालयों का हिस्सा हैं, जिनमें कण भौतिकी समस्याओं के प्रति काफी भारी पूर्वाग्रह हैं।


7

पहले से बताए गए शीर्ष पर कुछ और:

  • डेटा खनन के लिए R, Python और Weka एकीकरण एक्सटेंशन के साथ मिलकर KNIME
  • त्वरित ईडीए के लिए मोंड्रियन

और स्थानिक दृष्टिकोण से:

  • स्थानिक EDA और क्षेत्र डेटा के क्लस्टरिंग के लिए GeoDa
  • बिंदु डेटा के क्लस्टरिंग के लिए SaTScan

3
एक नोट के रूप में जियोडा और सैटस्कैन ओपन सोर्स नहीं हैं, वे फ्रीवेयर हैं (ऐसा नहीं है कि इससे मुझे बहुत फर्क पड़ता है!)
एंडी डब्ल्यू

1
जियोडा सेंटर द्वारा pySal खुला स्रोत है (नीचे देखें)
b_dev

6

मैंने दूसरा जे। R मूल्यवान क्यों है? यहाँ कारणों की एक छोटी सूची है। http://www.inside-r.org/why-use-r । इसके अलावा ggplot2 की जांच करें - आर के लिए एक बहुत अच्छा ग्राफिक्स पैकेज । यहां कुछ अच्छे ट्यूटोरियल हैं


9
यहाँ क्यों सवाल पूछें? सभी समुदाय-विकी हैं, केवल विहित उत्तर को ठीक क्यों नहीं करते?
जे स्टीवंस

4

यह 'सांख्यिकीय विश्लेषण' की बाहरी सीमा पर पड़ता है, लेकिन यूरेका आनुवंशिक प्रोग्रामिंग के माध्यम से डेटा में डेटा-माइनिंग नाइलिनियर संबंधों के लिए एक बहुत उपयोगकर्ता के अनुकूल कार्यक्रम है। यूरेका सामान्य उद्देश्य के रूप में नहीं है, लेकिन यह वही करता है जो यह काफी अच्छा करता है, और जीयूआई काफी सहज है। यह यूरेका सर्वर के माध्यम से उपलब्ध कंप्यूटिंग शक्ति का लाभ भी उठा सकता है।


3

Meta.Numerics सांख्यिकीय विश्लेषण के लिए अच्छे समर्थन के साथ एक .NET पुस्तकालय है।

आर (एक एस क्लोन) और ऑक्टेव (एक मैटलैब क्लोन) के विपरीत, इसमें "फ्रंट एंड" नहीं है। यह जीएसएल की तरह अधिक है, इसमें यह एक पुस्तकालय है जिसे आप लिंक करते हैं जब आप अपना स्वयं का आवेदन लिख रहे होते हैं जो सांख्यिकीय विश्लेषण करने की आवश्यकता होती है। C # और Visual Basic, लाइन-ऑफ-बिजनेस ऐप्स के लिए C / C ++ की तुलना में अधिक सामान्य प्रोग्रामिंग भाषाएं हैं, और Meta.Numerics में GSL की तुलना में सांख्यिकीय निर्माण और परीक्षणों के लिए अधिक व्यापक समर्थन है।



3

प्रतीकात्मक गणित सॉफ्टवेयर आँकड़ों के लिए भी एक अच्छा समर्थन हो सकता है। यहां कुछ जीपीएल हैं जिनका मैं समय-समय पर उपयोग करता हूं:

  1. सिम्पी अजगर आधारित और बहुत छोटी है, लेकिन फिर भी बहुत कुछ कर सकती है: डेरिवेटिव, इंटीग्रल, प्रतीकात्मक रकम, संयोजन, श्रृंखला विस्तार, टेनर जोड़तोड़, आदि। आर से इसे कॉल करने के लिए एक आर पैकेज है।
  2. ऋषि अजगर आधारित है और बहुत बड़ा है! यदि सिम्पी वह नहीं कर सकती जो आप चाहते हैं, ऋषि की कोशिश करें (लेकिन कोई देशी विंडोज़ संस्करण नहीं है)।
  3. मैक्सिमा लिस्प-आधारित है और बहुत ही शास्त्रीय है, (1) और (2) के बीच का आकार।

तीनों सक्रिय विकास में हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.