ما هي الذات في بايثون: أمثلة من العالم الحقيقي
ما هي الذات في بايثون: أمثلة من العالم الحقيقي
سأوضح لك كيفية استخراج السجلات من البيانات المحددة المدمجة ضمن أعمدة متعددة . هذا يحول بياناتك إلى تنسيق أكثر ملاءمة للتحليل.
هنالك عدة طرق لعمل هذا. لكن في هذا البرنامج التعليمي ، سأركز على الحل الذي اقترحه أنكيت ، وهو جزء من مجتمع LuckyTemplates الخاص بنا. يمكنك مشاهدة الفيديو الكامل لهذا البرنامج التعليمي في أسفل هذه المدونة.
جدول المحتويات
باستخدام النص
بالنسبة لهذا الحل ، سأستخدم Power Query لاستخراج السجلات من البيانات المحددة.
يوجد أدناه جدول الفرص داخل Power Query .
كما ترى ، هناك قيم متعددة متسلسلة في سجل واحد. في الصف الثاني ، على سبيل المثال ، هناك 4 قيم مختلفة مقدمة. يتم دمج هذه القيم الأربعة معًا ضمن عمودي "مبالغ المنافسين " و "مبالغ المنافسين" .
أول شيء سأفعله هو استخدام Text.Split .
يُرجع Text.Split قائمة بعد تقسيم قيمة نصية بناءً على محدد معين.
لبدء استخدام Text.Split ، سأقوم بنسخ المحدد المستخدم في هذا الجدول.
ستلاحظ أنه بمجرد النقر فوق هذا الإدخال في الجدول ، تظهر قيمة السجل في الأسفل. سأقوم فقط بنسخ المحدد من هناك.
بمجرد القيام بذلك ، سأقوم بإضافة عمود مخصص.
لست مضطرًا لتغيير الاسم حتى الآن. أنا فقط بحاجة إلى عمل نص. انقسام تحت صيغة عمود مخصصة .
هذه الصيغة تحتاج إلى قيمة نصية. لذلك سأختار فقط عمود المنافسون في الجزء الأيسر ويضاف تلقائيًا إلى الصيغة.
أحتاج أيضًا إلى فاصل معطى كنص. لذا داخل زوج من علامات الاقتباس ، سأقوم بلصق المحدِّد الذي نسخته سابقًا. بعد ذلك ، سأضيف قوس الإغلاق.
بمجرد الضغط على "موافق" ، سأنتهي بكائن قائمة.
بالنظر إلى القائمة الأولى ، يظهر عمود "المنافسون" و "المبالغ" إدخالًا واحدًا فقط. لذلك إذا قمت بالنقر فوق المساحة الفارغة بجانب كائن القائمة ضمن العمود المخصص ، فسيظهر أيضًا قيمة واحدة في الأسفل.
بالنسبة للسجل الثاني ، لدي قائمة تحتوي على أربع قيم. يتوافق هذا مع القيم الأربع الموضحة أيضًا في عمود المنافسون وعمود المبالغ .
باستخدام List.Zip
الآن بعد أن قمت بتقسيم القائمة ، فإن الخطوة التالية هي إضافة القيمة المقابلة من عمود كميات المنافسين. أنا ذاهب إلى القائمة Zip للقيام بذلك.
فكر في List.Zip كسحاب فعلي. يأخذ قائمة القوائم ويجمع بين العناصر.
بالنظر إلى المثال أدناه ، فكر فقط في القائمة الأولى (1 و 2) على أنها المسار الأخضر على السوستة.
ثم فكر في 3 و 4 على أنهما المسار الأحمر.
عند تطبيق List.Zip ، يجتمعون في المنتصف. لذلك تم دمج 1 من المجموعة الأولى مع 3 من المجموعة الثانية. يحدث نفس الشيء لـ 2 و 4. ويمكن ملاحظة ذلك في الإخراج ، حيث توجد مجموعتان جديدتان تم تشكيلهما.
قد تكون هناك أوقات تكون فيها القوائم المعنية ذات أطوال مختلفة . هذا يعني أنه إذا تم دمج القوائم ، فسيتم إرجاع البيانات المفقودة . لإنشاء أزواج دقيقة على الرغم من نقص البيانات ، تتم إضافة قيمة فارغة .
بالعودة إلى جدول الفرص ، سأضيف عمودًا مخصصًا آخر.
هذه المرة ، سأضيف عمود "مبالغ المنافسين" إلى الصيغة.
سأقوم أيضًا بإضافة List.Zip .
التحقق أدناه ، يوضح أنه لم يتم اكتشاف أخطاء.
ولكن عندما أنقر فوق "موافق" وألقي نظرة على العمود الجديد الذي تم تشكيله ، ما زلت أتلقى خطأً.
سأقوم بالضغط على المساحة البيضاء بجانب الخطأ لرؤية التفاصيل. يظهر أني أتلقى خطأ لأنني قمت بإرجاع بعض الحجج حول القوائم.
بالنظر إلى الصيغة ، فإنه يوضح أن بناء الجملة هذا حيث تمت الإشارة إلى عمود المنافسون قد أرجع قائمة.
لكن بناء جملة أعمدة "مبالغ المنافس" عاد أيضًا بقائمة.
تذكر ما يفعله List.Zip ، يأخذ قائمة واحدة من القوائم ويجمعها .
بالنظر إلى ظهور قائمتين ، أحتاج إلى مُهيئ القائمة لتجميع تلك القوائم معًا . لهذا السبب أقوم بإضافة هذه الأقواس المتعرجة.
بمجرد إضافة قوس الإغلاق المتعرج في النهاية ، أحتاج فقط إلى الضغط على Enter. هذا سوف يعطيني كائن قائمة.
الآن ، عندما أقوم بالنقر فوق جانب السجل الأول ، فإنه يعرض كائن قائمة واحد. هذا صحيح ، بالنظر إلى أنه في ظل مبالغ المنافسين ، توجد بالفعل قيمة واحدة هناك.
إذا فعلت الشيء نفسه مع السجل الثاني ، فسيظهر كائن قائمة يحتوي على 4 قوائم. يتطابق هذا أيضًا مع عدد القيم في البيانات المحددة ضمن كميات المنافسين.
سأستخدم الأسهم الجانبية الموجودة على يمين عنوان العمود المخصص لتوسيع البيانات إلى صفوف جديدة.
انتبه إلى السجل الثاني عندما أتوسع إلى صفوف جديدة.
سترى أن جميع القيم من هذا السجل يتم توسيعها لأسفل.
وعندما أنقر على الجانب في المساحة البيضاء ، يمكنني رؤية محتوى تلك القائمة المتداخلة. نظرًا لأن السجل الأول يحتوي على قيمة واحدة فقط لكل عمود ، فإنني أعرض أيضًا نفس البيانات في الأسفل.
ولكن عندما أنقر على السجل الثاني ، سترى أنني أعرض فقط القيم الأولى من القيم الأربع الواردة في بياناتي المحددة.
في السجل الثالث ، أعرض مجموعة القيم الثانية.
لذا سأستخدم الأسهم الجانبية مرة أخرى. لكن هذه المرة ، سأستخرج القيم من تلك القائمة.
سأعطيه فاصلًا مخصصًا.
سأستخدم الأنبوب المزدوج كمحدد. هذا يجب أن يجعل التمييز بين القيم في البيانات المحددة أكثر وضوحا.
بمجرد الضغط على "موافق" ، يتم ربط القيم مباشرة في العمود "مخصص".
تنظيف البيانات
لم أعد بحاجة إلى عمودي "مبالغ المنافس" و "مبالغ المنافس" ، لذلك سأقوم بإزالة هذين العمودين.
بالنسبة للعمود المخصص ، سأقوم بتقسيم ذلك.
في علامة تبويب التحويل ، سأقوم بتحديد تقسيم العمود. سأقوم بتقسيمه بواسطة المحدد.
في النافذة ، سأقدم الأنبوب المزدوج كأساس.
بمجرد الضغط على "موافق" ، سيتم الآن تقسيم البيانات إلى أعمدة منفصلة.
سأعيد تسمية هذه الأعمدة الجديدة فقط لتسهيل معرفة ماهية البيانات. سأسمي هذا عمود المنافس مرة أخرى.
ثم سأسمي العمود الآخر عمود المبلغ.
من الواضح أن عمود المبلغ يحتوي على أرقام. ولكن إذا نظرت إلى الرمز الذي يمثل نوع البيانات ، فإنه يظهر أن لدي نصًا بدلاً من الأرقام. لذا سأبدأ في إصلاح ذلك.
أنا مقيم في أوروبا ، لذلك نستخدم النقطة كفاصل آلاف بدلاً من فاصلة. سأستخدم "استبدال القيم" لتنظيف ذلك.
في النافذة ، أحتاج فقط إلى وضع فاصلة ضمن القيمة التي يتم البحث عنها ، ونقطة أسفل "استبدال بـ".
بمجرد الضغط على "موافق" ، ستظهر الآن جميع الفواصل النقاط بدلاً من ذلك.
الشيء التالي الذي سأفعله هو إزالة علامة الدولار أمام القيم. مرة أخرى ، سأستخدم أداة استبدال القيم. هذه المرة ، سأترك مساحة "استبدال بـ" فارغة.
بمجرد الضغط على "موافق" ، ستظهر القيم فقط الأرقام بدون أي عملة.
بالنظر إلى أسفل العمود الخاص بي ، فإنه يعرض أيضًا إدخالًا هنا بشرطة مزدوجة. نظرًا لأن ذلك قد يؤدي إلى إرجاع خطأ محتمل ، فسوف أتخلص من هذه الشرطة المزدوجة.
سأستبدل الشرطة المزدوجة بفارغ.
وبمجرد الضغط على "موافق" ، يكون لدي التنسيق الصحيح لجميع الإدخالات الموجودة ضمن عمود "المبلغ".
يمكنني الآن النقر فوق رمز نوع البيانات واختيار الرقم الصحيح.
تغيير تنسيقات التاريخ باستخدام Power Query Editor
3 طرق لدمج القيم باستخدام DAX Inside LuckyTemplates
Advanced Transformations في LuckyTemplates
خاتمة
كما ذكرت سابقًا ، يمكنك استخراج القيم من البيانات المحددة بطرق مختلفة. لكن بالنسبة لي ، هذا النهج هو أحد أسهل الطرق وأسرعها للقيام بذلك.
نظرًا لأنني حصلت على فكرة هذا الحل من أحد أعضاء مجتمع ، فإن هذا يوضح أيضًا مدى أهمية . يمكنك حقًا رؤية كل مشكلة من وجهات نظر مختلفة. من هناك ، يمكنك فقط اختيار الحل الذي تعتقد أنه الأفضل بالنسبة لك.
أتمنى لك كل خير،
ميليسا
***** قوة التعلم BI؟ *****
ما هي الذات في بايثون: أمثلة من العالم الحقيقي
ستتعلم كيفية حفظ وتحميل الكائنات من ملف .rds في R. ستغطي هذه المدونة أيضًا كيفية استيراد الكائنات من R إلى LuckyTemplates.
في هذا البرنامج التعليمي للغة ترميز DAX ، تعرف على كيفية استخدام وظيفة الإنشاء وكيفية تغيير عنوان القياس ديناميكيًا.
سيغطي هذا البرنامج التعليمي كيفية استخدام تقنية Multi Threaded Dynamic Visuals لإنشاء رؤى من تصورات البيانات الديناميكية في تقاريرك.
في هذه المقالة ، سأقوم بتشغيل سياق عامل التصفية. يعد سياق عامل التصفية أحد الموضوعات الرئيسية التي يجب على أي مستخدم LuckyTemplates التعرف عليها في البداية.
أريد أن أوضح كيف يمكن لخدمة تطبيقات LuckyTemplates عبر الإنترنت أن تساعد في إدارة التقارير والرؤى المختلفة التي تم إنشاؤها من مصادر مختلفة.
تعرف على كيفية إجراء تغييرات في هامش الربح باستخدام تقنيات مثل قياس التفرع والجمع بين صيغ DAX في LuckyTemplates.
سيناقش هذا البرنامج التعليمي أفكار تجسيد مخازن البيانات وكيفية تأثيرها على أداء DAX في توفير النتائج.
إذا كنت لا تزال تستخدم Excel حتى الآن ، فهذا هو أفضل وقت لبدء استخدام LuckyTemplates لاحتياجات إعداد تقارير الأعمال الخاصة بك.
ما هي بوابة LuckyTemplates؟ كل شيئ ترغب بمعرفته