ما هي الذات في بايثون: أمثلة من العالم الحقيقي
ما هي الذات في بايثون: أمثلة من العالم الحقيقي
في هذه المدونة ، سأوضح لك كيفية إزالة الصفوف المكررة في LuckyTemplates Power Query بناءً على الشروط. يمكنك مشاهدة الفيديو الكامل لهذا البرنامج التعليمي في أسفل هذه المدونة.
هذا المثال مأخوذ من سؤال تم طرحه في . العضو لديه بيانات المعاملات ويريد إزالة الصفوف التي تلغي بعضها البعض.
هناك نوعان مختلفان من المعاملات ، أحدهما للوارد والآخر للصادر. لقد أضافت أيضًا عدد الحركة. وبناءً على ذلك صاغت ثلاثة سيناريوهات.
السيناريو الأول مبني على صفين. إذا ألغوا بعضهم البعض ، يجب إزالة كلا الصفين. إذا لم يكن الأمر كذلك ، فيجب الاحتفاظ بالصفين.
يعتمد السيناريوهان الثاني والثالث على مجموعة من الصفوف تلغي بعضها البعض جزئيًا. يجب إزالة هذه الصفوف على أساس الوارد أولاً يصرف أولاً بحيث يتم الاحتفاظ بأحدث المعاملات الواردة فقط.
في الأساس ، نحن نكرر نفس المنطق مرارًا وتكرارًا. يجب أن نكون قادرين على تصميم نهج واحد يناسب كل هذه السيناريوهات.
بعض الأشياء التي سنقوم بها هي إضافة عمود بكميات مطلقة وتجميعها عن طريق "إضافة عمود رصيد كمية" وجدول متداخل باستخدام خيار "جميع الصفوف". سنقوم أيضًا بتحويل هذه الجداول المتداخلة ، وفرز نوع الحركة وتاريخ الترحيل ، وإنشاء إجمالي حالي ، والاحتفاظ بالصفوف بناءً على شرط فقط.
لقد صنفت هذا على مستوى متوسط لأن معظم التحولات التي يمكننا القيام بها هنا هي باستخدام واجهة المستخدم. مع ذلك ، دعنا ننتقل إلى LuckyTemplates Power Query.
جدول المحتويات
إضافة عمود بكميات مطلقة في Power Query
سنبدأ بإضافة عمود بكميات مطلقة. حدد عمود الكمية ، ثم في شريط أو علامة التبويب إضافة عمود ، انتقل إلى علمي ، ثم انقر على القيمة المطلقة .
سأقوم بإعادة تسمية هذا العمود في شريط الصيغة.
تجميع حسب فهرس المعرف والكمية المطلقة
يمكننا الآن التجميع حسب فهرس المعرف والكمية المطلقة. حدد فهرس المعرف ، ثم اضغط باستمرار على shift أو control للتحديد المتعدد ، ثم انقر فوق Abs qty (الكمية المطلقة).
ستجد Group by في علامة التبويب Transform.
ولكن يمكنك أيضًا العثور عليه في علامة التبويب "الصفحة الرئيسية".
انقر فوقه والآن سنقوم بإضافة عمود جديد. إنه ليس "عدد" ، لكنه سيكون "مجموع" الكمية. لذلك ، دعنا نعيد تسميته إلى الرصيد الكمية (الكمية) . سيكون مجموع عمود الكمية. وبعد ذلك ، سنضيف تجميعًا آخر ، لكنه سيكون تجميعًا خاصًا ، لذلك سنختار كل الصفوف . لنمنح هذا العمود أيضًا اسمًا ( AllRows ). ثم اضغط على "موافق".
إذا نقرنا على المساحة البيضاء في الجدول ، فسنرى معاينة للجدول المتداخل في الأسفل. نرى أن كميات هذا الجدول المتداخل تلغي بعضها البعض وأن رصيد الكمية يساوي صفرًا.
إذا نظرنا إلى الجدول المتداخل التالي (لذا انقر على الجانب في المساحة البيضاء للصف التالي) ، نرى أن عمود الكمية لا يلغي بعضهما البعض وأن رصيد الكمية أكبر من الصفر.
دعنا نضيف عمودًا مخصصًا حتى نتمكن من استخدامه لتحويلات الجدول المتداخلة لاحقًا. لذلك ، حدد إضافة عمود مخصص .
دعنا نعيد تسمية هذا العمود إلى Transformations وسنضيف صفرًا (0) كعنصر نائب. ثم انقر فوق "موافق".
تحويل الجداول المتداخلة في LuckyTemplates Power Query
نحن الآن جاهزون لإنشاء منطق لتحويل تلك الجداول المتداخلة. لكننا لا نريد أن نكتب مجموعة منها ، ولسنا بحاجة إلى ذلك.
يمكننا استخدام واجهة المستخدم في أغلب الأحيان. إذا قمنا ببناء منطق تلك التحولات في استعلام منفصل ، فإن السيناريو الأكثر تفصيلاً الذي كان لدينا هو ذلك الذي يتكون من ثلاثة أو أربعة صفوف.
الآن ، إذا نقرت على الجانب الأيمن في الصف الأخير ، أرى أن هذا الجدول يحتوي على أربعة صفوف. لذلك ، يمكننا استخدام هذا لبناء تحولاتنا.
انقر بزر الماوس الأيمن على الجانب الموجود في المساحة البيضاء وحدد إضافة كاستعلام جديد .
نرى أن الجدول المتداخل قد تم توسيعه الآن وتمت إضافته كاستعلام جديد ويمكننا استخدام هذا لبناء المنطق الذي نحتاجه.
نوع حركة الفرز وتاريخ الإرسال
الآن ، أول شيء علينا القيام به هو نوع الحركة . دعنا نختار تنازليًا . بهذه الطريقة ، ستكون المعاملات الصادرة دائمًا في المقدمة.
بعد ذلك ، سنقوم بفرز تاريخ النشر على أنه تصاعدي ، مع التأكد من أننا إذا حذفنا الصفوف ، فسيتم ذلك دائمًا وفقًا لمبدأ الوارد أولاً يصرف أولاً (أولاً يصرف أولاً).
تكوين المجموع الجاري
لتحديد الصفوف التي سنزيلها ، سأضيف إجماليًا جاريًا لتعطيله ، ويمكننا استخدام List.FirstN لهذه المهمة. تنشئ هذه الوظيفة قائمة بناءً على قائمة أخرى ، حيث يتم الاحتفاظ بالعناصر العليا بناءً على رقم معين أو على أساس معيار.
دعنا نعود إلى استعلامنا. نحتاج إلى شيئين لـ List. أولاً ، نحتاج إلى تلك القائمة ، وهذه القائمة هي عمود الكمية لدينا . إذا نقرت بزر الماوس الأيمن على رأس عمود الكمية ، فسنحصل على خيار الإضافة كـ NewQuery .
وهنا ، نرى الكود الذي نحتاجه لإنشاء تلك القائمة. في الخطوة المطبقة ، يمكنك أن ترى أنها تشير إلى الخطوة الأخيرة ثم تحدد العمود الموجود في تلك الأقواس.
الجزء الثاني الذي نحتاجه لـ List.FirstN هو رقم لتحديد عدد الأرقام التي يجب الاحتفاظ بها من تلك القائمة. يمكننا استخدام الفهرس لذلك ، سأقوم بإضافة عمود فهرس من واحد (1) لهذا الصف.
لذلك بالنسبة للرقم 1 ، سيحتفظ بالرقم في الصف الأول في عمود الكمية ، وهكذا. ويمكننا الآن تلخيص ذلك.
دعنا نضيف عمودًا مخصصًا ، ونطلق عليه اسم الإجمالي الجاري . نستخدم List.FirstN هنا ، ويمكننا أن نرى أن المعلمة الأولى كانت تلك القائمة ، عمود الكمية. نحتاج إلى الإشارة إلى الخطوة الأخيرة ، وهذه الخطوة الأخيرة هي الفهرس المضاف .
حددنا العمود الذي نريده ، وهو عمود الكمية لدينا. العد الخاص بنا موجود في عمود الفهرس.
الآن تقوم بإرجاع قائمة. إذا نقرنا على الجانب في المساحة البيضاء ، يمكننا رؤية محتويات تلك القائمة. بالنسبة للسجل الأول ، احتفظ فقط بالصف العلوي من تلك القائمة. بالنسبة للسجل الثاني ، احتفظ بالصفين العلويين.
كل ما علينا فعله الآن هو تلخيص هذه الكميات ويمكننا استخدام القوائم ، الجمع للقيام بذلك. لذا ، سأضيف ذلك في شريط الصيغة. وسأضع النوع أيضًا .
تصفية الصفوف على أساس الشرط
باستخدام هذا الإجمالي الحالي ، يمكننا تحديد الصفوف التي نريد الاحتفاظ بها. نريد فقط الاحتفاظ بالصفوف الأكبر من الصفر ، لذلك دعونا نضيف شرط تصفية.
يمكننا الآن إزالة الأعمدة المساعدة. حدد الفهرس والإجمالي الجاري ، ثم انقر فوق إزالة الأعمدة.
في المحرر المتقدم ، يمكننا الآن نسخ الكود الذي أنشأناه. سأفتح المحرر المتقدم ، ويمكننا أن نرى أن هذه هي خطوتنا المنقسمة. لذلك ، يمكننا تحديد ونسخ كل شيء أدناه.
لنعد الآن إلى استعلامنا الأصلي. مرة أخرى ، افتح المحرر المتقدم. وبدلاً من العنصر النائب ، دعنا ننتقل إلى سطر جديد. سأستخدم تعبير " Let " لأنه يمكن أن يلتقط القيم من الحسابات الوسيطة في المتغيرات. لذا ، "دعنا" ثم انتقل إلى سطر جديد والصق تحولاتي. كما سأعلن النوع .
يشير الرمز المميز أعلاه إلى جدولنا المتداخل الموسع ، والذي يتم وضعه داخل عمود كل الصفوف. لذا ، سأشير إلى ذلك ، من خلال استبدال هذا الرمز المميز بـ AllRows .
لذلك يحتوي عمود التحويل الآن على جداول متداخلة. نحن نبني استعلامنا بناءً على الصف الأخير ، أليس كذلك؟ وقد احتوى ذلك على أربعة صفوف عندما بدأنا وكان يحتوي على صفين فقط. لدينا أيضًا تلك الكمية المتوازنة صفر ، أليس كذلك؟ والآن لديها طاولة فارغة.
يمكننا إزالتها عن طريق التصفية في عمود رصيد الكمية. لا نريد رصيد الكمية يساوي صفرًا.
وبعد ذلك ، سأقوم بتحديد عمود التحويل الخاص بي وإزالة الأعمدة الأخرى. يمكنني الآن توسيع الجداول المتداخلة للتحويل. لا تستخدم اسم العمود الأصلي كبادئة واضغط على موافق.
في علامة التبويب التحويل ، حدد نوع البيانات ، وقد انتهينا جميعًا. وهذه هي الطريقة التي تقوم بها بتنظيف بيانات المعاملات.
أساسيات Unpivot و Pivot في LuckyTemplates - مراجعة محرر الاستعلام
تلميحات الممارسة الخاصة بي عند استخدام
التحويلات المتقدمة لمحرر LuckyTemplates المتقدم في LuckyTemplates
خاتمة
في هذا البرنامج التعليمي ، أوضحت لك كيفية تنظيف بيانات المعاملات ، وتحديدًا إزالة الصفوف المكررة. هذه تقنية رائعة يمكنك استخدامها عند استخدام LuckyTemplates Power Query.
أتمنى أن تكون قد استمتعت بهذا. شاهد الفيديو التعليمي الكامل أدناه لمزيد من التفاصيل. تحقق من الارتباطات الموجودة أدناه للحصول على مزيد من المحتوى ذي الصلة حول محرر LuckyTemplates Power Query.
هتافات!
ميليسا
ما هي الذات في بايثون: أمثلة من العالم الحقيقي
ستتعلم كيفية حفظ وتحميل الكائنات من ملف .rds في R. ستغطي هذه المدونة أيضًا كيفية استيراد الكائنات من R إلى LuckyTemplates.
في هذا البرنامج التعليمي للغة ترميز DAX ، تعرف على كيفية استخدام وظيفة الإنشاء وكيفية تغيير عنوان القياس ديناميكيًا.
سيغطي هذا البرنامج التعليمي كيفية استخدام تقنية Multi Threaded Dynamic Visuals لإنشاء رؤى من تصورات البيانات الديناميكية في تقاريرك.
في هذه المقالة ، سأقوم بتشغيل سياق عامل التصفية. يعد سياق عامل التصفية أحد الموضوعات الرئيسية التي يجب على أي مستخدم LuckyTemplates التعرف عليها في البداية.
أريد أن أوضح كيف يمكن لخدمة تطبيقات LuckyTemplates عبر الإنترنت أن تساعد في إدارة التقارير والرؤى المختلفة التي تم إنشاؤها من مصادر مختلفة.
تعرف على كيفية إجراء تغييرات في هامش الربح باستخدام تقنيات مثل قياس التفرع والجمع بين صيغ DAX في LuckyTemplates.
سيناقش هذا البرنامج التعليمي أفكار تجسيد مخازن البيانات وكيفية تأثيرها على أداء DAX في توفير النتائج.
إذا كنت لا تزال تستخدم Excel حتى الآن ، فهذا هو أفضل وقت لبدء استخدام LuckyTemplates لاحتياجات إعداد تقارير الأعمال الخاصة بك.
ما هي بوابة LuckyTemplates؟ كل شيئ ترغب بمعرفته