2010-06-02 10 views
7

गीतों की एक सूची को देखते हुए, उनकी सापेक्ष "लोकप्रियता" निर्धारित करने का सबसे अच्छा तरीका क्या है?वस्तुओं की सूची (किताबें, गीत, फिल्में इत्यादि) की सापेक्ष "लोकप्रियता" को प्रोग्रामेटिक रूप से निर्धारित करें

मेरा पहला विचार Google Trends का उपयोग करना है। गीत की यह सूची:

  • कैलिफोर्निया gurls
    1. Subterranean Homesick Blues
    2. साम्राज्य मन की स्थिति पैदा करता है निम्नलिखित Google Trends report: (पता लगाने के लिए क्या लोकप्रिय अब है, मैं प्रतिबंधित पिछले 30 दिनों की रिपोर्ट)

      http://s3.amazonaws.com/instagal/original/image001.png?1275516612

      एम्पायर स्टेट ऑफ माइंड कैलिफ़ोर्निया गुर्ल्स की तुलना में मामूली रूप से अधिक लोकप्रिय है, और सबटर्रेनियन होमसिक ब्लूज़ या तो कहीं भी कम लोकप्रिय है।

      तो यह बहुत अच्छी तरह से काम करता है, लेकिन क्या होता है जब आपकी सूची 100 या 1000 गाने लंबी होती है? Google Trends केवल आपको एक बार में 5 शब्दों की तुलना करने की अनुमति देता है, इसलिए एक विशाल राउंड-रॉबिन अनुपस्थित है, सही दृष्टिकोण क्या है?

      एक अन्य विकल्प बस हर गाने के लिए एक Google खोज करते हैं और देखते हैं जो सबसे अधिक परिणाम है करने के लिए है, लेकिन यह वास्तव में एक ही बात

    उत्तर

    2

    आप ट्विटर पर आइटम के लिए खोज सकते हैं मापन नहीं करता है और देखते हैं कि कितने बार उल्लेख किया गया है। या अमेज़ॅन पर यह देखने के लिए देखें कि कितने लोगों ने इसकी समीक्षा की है और उन्होंने इसे किस रेटिंग में दिया है। ट्विटर और अमेज़ॅन दोनों में एपीआई हैं।

    1

    मैं निश्चित रूप से "प्रतिबंधित" के Google के एपीआई का इलाज करूंगा।

    सामान्य में, तुलना एल्गोरिदम छँटाई के लिए इस्तेमाल किया कार्यों बहुत "बाइनरी" कर रहे हैं:

    • इनपुट: 2 तत्वों
    • उत्पादन: सही/गलत

    यहाँ आप है:

    • इनपुट: 5 तत्व
    • आउटपुट: रिला प्रत्येक तत्व

    की ेश्य वजन इसलिए आप केवल API के लिए कॉल की एक रेखीय संख्या ((एन लॉग ऑन एन) तुलना कार्यों के लिए कॉल जबकि आमतौर पर छँटाई हे की आवश्यकता है) की आवश्यकता होगी।

    आपको बिल्कुल ceil((N-1)/4) कॉल की आवश्यकता होगी। आप समानांतर कर सकते हैं, यद्यपि सबमिट करने के लिए अधिकृत अनुरोधों की संख्या के लिए उपयोगकर्ता मार्गदर्शिका को बारीकी से पढ़ें।

    फिर, उनमें से एक बार "रेटेड" हो जाने पर आप स्थानीय में एक साधारण प्रकार का हो सकते हैं।

    Intuitively, ताकि उन्हें ठीक से इकट्ठा करने के लिए आप होगा:

    • अपनी सूची शफ़ल
    • 5 पहला तत्व पॉप
    • कॉल एपीआई
    • सम्मिलित करें उन्हें परिणाम में क्रमबद्ध (प्रयोग प्रविष्टि यहां क्रमबद्ध करें)
    • औसत
    • 4 पहले तत्वों को पॉप करें (या कम उपलब्ध होने पर कम)
    • कॉल मंझला और उन 4 पहले
    • जाओ वापस साथ एपीआई तत्वों

    अपनी सूची 1000 गाने लंबा है से बाहर अपने रन तक सम्मिलित करें, कि एपीआई के 250 कॉल, कुछ भी नहीं भी डरावना ।

    3

    उत्कृष्ट प्रश्न - ब्रिटनी स्पीयर्स द्वारा एक गीत, 2 महीने के लिए असाधारण रूप से लोकप्रिय हो सकता है (शुक्रिया) भूल गया, जबकि एल्विस के एक और गीत ने 30 वर्षों तक लोकप्रियता बरकरार रखी है। कैसे आप मात्रात्मक दो भेद हैं? हम जानते हैं कि हम को लगता है कि निरंतर लोकप्रियता एक से ज्यादा महत्वपूर्ण है "पैन में फ्लैश" चाहते हैं, लेकिन यह कैसे परिणाम प्राप्त करने के?

    सबसे पहले, मैं रिलीज की तारीख के आसपास सामान्यीकृत होगा - सबटर्रेनियन होमसिक ब्लूज़ अब अलोकप्रिय हो सकता है (हालांकि मेरे घर में नहीं), लेकिन 1 9 65 में सामान्यीकृत करने से एक अलग परिणाम मिल सकता है।

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

    संभवतः दो समय श्रृंखला के बीच अंतर की भयावहता निर्धारित करने के लिए कम प्रतिबंधक परीक्षण है, लेकिन मैं उन्हें भर में अभी तक नहीं चला है।

    कोई भी?

    संबंधित मुद्दे