Tuesday 6 February 2018

متوسط لينق المتحرك


هدفي هو الحصول على المتوسط ​​المرجح من جدول واحد، استنادا إلى مفتاح أساسي آخر الجداول. أحتاج إلى الحصول على المتوسط ​​المرجح استنادا إلى طول القطاع، وأنا بحاجة إلى تجاهل قيم -1. أنا أعرف كيفية القيام بذلك في سكل، ولكن هدفي هو القيام بذلك في لينق. يبدو شيئا من هذا القبيل في سكل: أنا لا تزال جديدة جدا ل لينق، وبعد صعوبة في معرفة كيف يمكنني ترجمة هذا. وينبغي أن يخرج المتوسط ​​المرجح للنتائج إلى نحو 55.3. شكرا لكم. طلب أبريل 26 10 في 15:23 أفعل هذا بما فيه الكفاية أنني خلقت طريقة تمديد لينق. بعد أن تحصل على مجموعة البيانات الخاصة بك تبدو المكالمة مثل هذا. وقد أصبح هذا مفيد للغاية لأنني يمكن الحصول على المتوسط ​​المرجح لأي مجموعة من البيانات على أساس حقل آخر داخل نفس السجل. أنا الآن تحقق لتقسيم بنسبة صفر ورمي استثناء أكثر تفصيلا بدلا من العودة 0. يسمح للمستخدم للقبض على الاستثناء والتعامل مع الحاجة. إذا كنت متأكدا من أن لكل مفتاح أجنبي في Table2 هناك سجل المقابلة في Table1، ثم يمكنك تجنب الانضمام فقط جعل مجموعة من قبل. في هذه الحالة، الاستعلام لينق مثل هذا: هذه هي الطريقة التي يمكنك الحصول على ويتيدافيراج لمفتاح أجنبي محدد. طريقة تولست التي تسمى عند جلب السجلات، هي تجنب تنفيذ الاستعلام مرتين أثناء تجميع السجلات في عمليتي سوم المنفصلتين. من أجل تحقيق أداء غير متماثل ل O (n) (كما يفعل الحل المرمز يدويا)، فإنك يمكن استخدام الدالة التجميعية كما في القيمة المتراكمة (التي يتم تنفيذها كنوع مجهول) تحتوي على حقلين: النتيجة تحتوي على قائمة النتائج التي تراكمت حتى الآن. يحتوي العمل على آخر عناصر الفترة -1. تقوم الدالة التجميعية بإضافة القيمة الحالية إلى قائمة العمل، وتبني المتوسط ​​الحالي وتضيفها إلى النتيجة، ثم تقوم بإزالة القيمة الأولى (أي الأقدم) من قائمة العمل. يتم بناء البذور (أي قيمة البداية للتراكم) من خلال وضع الفترة الأولى من العناصر 1 في العمل وتهيئة النتيجة إلى قائمة فارغة. وبالتالي يبدأ التجميع ثا مع فترة العنصر (عن طريق تخطي (الفترة -1) العناصر في البداية) في البرمجة الوظيفية هذا هو نمط استخدام نموذجي للدالة أغريتات (أو أضعاف)، راجع للشغل. الحل ليس وظيفيا نظيفة في أن نفس الكائنات القائمة (العمل والنتيجة) يتم استخدامها في كل خطوة. إم غير متأكد إذا كان هذا قد يسبب مشاكل إذا حاول بعض المجمعين في المستقبل لموازنة الدالة التجميع تلقائيا (من ناحية أخرى أنا أيضا غير متأكد، إذا كان ذلك ممكنا بعد كل شيء). الحل الوظيفي البحت يجب إنشاء قوائم جديدة في كل خطوة. لاحظ أيضا أن C تفتقر إلى تعبيرات قائمة قوية. في بعض افتراضية بيثون - C - مختلطة بسيودوكود يمكن للمرء أن يكتب وظيفة التجميع مثل الذي سيكون قليلا أكثر أناقة في رأيي المتواضع :) لاحظ وقت تشغيل O (N2). منذ تحتاج إلى تخطي المزيد والمزيد من العناصر في كل خطوة (و أفيك تخطي (ط) لديه لاستدعاء IEnumerator. MoveNext ط مرات). انظر ردي لحل في O (n) الوقت. (لقد لاحظت فقط تعليق أوبس أدناه أن هيش ربما الحصول على القيم من دب سكل في المستقبل. في هذه الحالة أود أن كل تثبيط بقوة من هذا الحل) نداش مارتنستيتنر مار 3 11 في 0:53 لأكبر طريقة ممكنة لحساب متوسط ​​متحرك مع لينق، يجب أن لا تستخدم لينق بدلا من ذلك أقترح إنشاء فئة المساعد الذي يحسب المتوسط ​​المتحرك بأكثر الطرق كفاءة ممكنة (باستخدام العازلة دائرية والسببية مرشح المتوسط ​​المتحرك)، ثم طريقة التمديد لجعله في متناول إلى لينق. أولا، المتوسط ​​المتحرك توفر هذه الفئة تنفيذ سريع جدا وخفيف الوزن لفلتر موفينغافيراج. أنه يخلق عازلة دائرية من طول N ويحسب إضافة واحدة وطرح واحد واحد ضرب لكل نقطة بيانات إلحاق، بدلا من N مضاعفة يضيف لكل نقطة لتنفيذ القوة الغاشمة. طرق التمديد أعلاه التفاف فئة موفينغافيراج والسماح الإدراج في تيار إينوميرابل. للقيام بذلك بطريقة أكثر وظيفية، تحتاج إلى طريقة المسح الضوئي الموجود في ر ولكن ليس في لينق. دعونا ننظر كيف سيبدو كما لو كان هناك طريقة المسح الضوئي و هيريس طريقة المسح الضوئي، اتخذت و تعديلها من هنا: هذا ينبغي أن يكون أداء أفضل من طريقة القوة الغاشمة لأننا نستخدم مجموع تشغيل لحساب سما. للبدء نحتاج لحساب الفترة الأولى التي نسميها البذور هنا. ثم، كل قيمة لاحقة نحسب من قيمة البذور المتراكمة. للقيام بذلك نحن بحاجة إلى القيمة القديمة (وهذا هو تي دلتا) وأحدث قيمة التي نحن الرمز البريدي معا سلسلة، مرة واحدة من البداية وتحولت مرة واحدة من قبل دلتا. في النهاية نفعل بعض تنظيف عن طريق إضافة الأصفار لطول الفترة الأولى وإضافة القيمة الأولية البذور. الرد أفاتار يونيو 19 13 في 22: 58 لدي 4000 بيانات كمية من الأسهم، و ترينغ لحساب المتوسط ​​المتحرك لجميع قيم البيانات، ولكن بما أن المتوسط ​​المتحرك يستند إلى البيانات السابقة، وأنا لا يمكن حساب سما لمدة 15 يوما لأول 14 يوما، تخطي أول 14 يوما وحساب سما على بقية البيانات. وأنه يجب أن تستخدم لينق لإنجاز. يمكن لأي شخص إعطاء عينات أو تلميح كيفية استخدام لينق لحساب المتوسط ​​المتحرك الإخراج لمتوسط ​​القيم كلها في جميع أنحاء 500s أنا حقا لا أفهم كيف هو ممكن للحصول على تلك القيمة العالية. الانتقال averager بمبالغ مجموعة: 06072012 562.49 571.72 06082012 565.84 580.32 06112012 568.56 571.17 06122012 569.55 576.16 06132012 570.56 572.16 06142012 570.63 571.53 06152012 571.21 574.13 06182012 572.78 585.78 06192012 573.79 587.41 06202012 574.23 585.74 06212012 574.22 577.67 06222012 575.63 582.10 06252012 576.06 570.77 06262012 576.68 572.03 06272012 576.88 574.50 06282012 576.7 569.05 06292012 576.95 584.00 07022012 578.37 592.52 07032012 579.92 599.41 07032012 581.74 599.41 ليمكس 021434 02:59 ليزا تشو موظفو وحدة مايكروسوفت 051434 07:38 لينك ذات الصلة (من: فيسوال C جينيرال) لإنشاء متوسط ​​متحرك، سأبدأ بإنشاء نطاق من 0 إلى (طول قائمة البيانات - طول الفترة المتحركة)، ثم لكل قيمة في النطاق تحديد العناصر x إلى x 43 طول الفترة المتحركة وحساب المتوسط. الكل في واحد لطيفة بيان لينق: لاحظ أن هذا ليس فعالا للغاية، لأنك تتكرر أساسا على قائمة البيانات لكل قيمة في النطاق .. مهلا، تبدو هذا النظام يسمح توقيعات أكثر من 60 تشا أرنو بروور 091434 04:42 الكسندر صن 231434 02:44 091434 04:41 سوف تساعد عينة من بيان لينق الخاص بك. كوت بريماتور الأمثل هو جذر كل evil. quot - كنوث 021434 03:35 ما تقصده بيان لينق 021434 03:49 قدمت مايكروسوفت موردا لطيفا لتعلم لينق. إذا كنت تريد شيئا لم يكن لديك أبدا، عليك أن تفعل شيئا لم تفعله أبدا. يجب على الجميع (وليس فقط موضوع بداية) أن تأخذ من الوقت للاحتفال وظائف مفيدة، واقتراح الأجوبة، وعلامة إجابات على الأسئلة. 021434 05:51 من وصفك، أود أن نقل هذه المشاركة إلى المنتدى الأكثر صلة. هناك المزيد من الخبراء في هذا الجانب، لذلك سوف تحصل على دعم أفضل وربما يكون أكثر حظا الحصول على إجابات. شكرا لتفهمك. 051434 07:37 إيف بحثت قليلا قليلا ووجدت بعض المناقشات بشأن مشكلتك. نلقي نظرة، ربما يمكن أن تساعد. يرجى وضع علامة على الرد إذا ساعد. أيضا زيارة بلدي بلوق msguy. net الكسندر صن 071434 01:42 الكسندر صن 231434 02:44 051434 12:47 لإنشاء المتوسط ​​المتحرك، وأود أن تبدأ من خلال إنشاء مجموعة من 0 إلى (طول قائمة البيانات - طول الفترة المتحركة) ، ثم لكل قيمة في نطاق تحديد العناصر x إلى x 43 طول الفترة المتحركة وحساب المتوسط. الكل في واحد لطيفة بيان لينق: لاحظ أن هذا ليس فعالا للغاية، لأنك تتكرر أساسا على قائمة البيانات لكل قيمة في النطاق .. مهلا، تبدو هذا النظام يسمح توقيعات أكثر من 60 تشا أرنو بروور 091434 04:42 الكسندر صن 231434 02:44 091434 04:41

No comments:

Post a Comment