ই-কমার্স এক্সপোর্ট ডেটা অধিকাংশ সময় গুলফোল থাকে। একটি ফাইলে একাধিক SKU ভেরিয়েশন, অসঙ্গতিপূর্ণ গ্রাহক তথ্য, সম্মিশ্রিত ঠিকানা ফিল্ড, ডুপ্লিকেট বা নাল মান এবং ছবিয়ে থাকা মূল্যের বিবরণ থাকতে পারে। আপনি যদি কখনও এক্সেল বা পাওয়ার বি-এতে এই ধরনের ডেটা বিশ্লেষণ করার চেষ্টা করে থাকেন, তবে জিনিসগুলো কত দ্রুত জটিল হয়ে যায় তা আপনি জানেন। এখানেই পাওয়ার কোয়ারী অবিশ্বাস্যভাবে কার্যকর হয়। আপনি এক্সেল ব্যবহার করেন বা পাওয়ার বি-ইত্যাদি যেকোনো টুল ব্যবহার করুন—পাওয়ার কোয়ারী জটিল ফর্মুলা লিখতে ছাড়া কাঁচা ই-কমার্স ডেটা পরিশোধ ও পুনর্গঠন করতে সাহায্য করে।
SKU ভেরিয়েশন কলাম Unpivot করা
অনেক ই-কমার্স এক্সপোর্ট অর্ডার করা প্রোডাক্টগুলো একাধিক কলামে সংরক্ষণ করে, যেমন Stock_S, SKU 1, SKU 2, SKU 3, Variant 1, Variant 2, এবং Variant 3, প্রতিটিতে একটি পরিমাণ থাকে। এই কাঠামো বিশ্লেষণ করার জন্য কঠিন কারণ প্রতিটি অর্ডারের প্রোডাক্টের বিবরণ একাধিক কলামে ছড়িয়ে থাকে। পিভট টেবিল, DAX মেজার, এবং SUM ফর্মুলা এই চওড়া ফরম্যাটে কার্যকরভাবে সমষ্টি করতে পারে না। Unpivot করা একটি দীর্ঘ, নর্মালাইজড ফ্যাক্ট টেবিল তৈরি করে যা বিশ্লেষণের জন্য আদর্শ।
ধাপসমূহ:
- আপনার ডেটা পাওয়ার কোয়ারী-তে লোড করুন

- SKU কলামগুলো নির্বাচন করুন (Stock S, M, L, XL)
- Transform ট্যাবে যান >> Unpivot Columns নির্বাচন করুন

- পাওয়ার কোয়ারী এই SKU কলামগুলোকে দুটি নতুন কলামে রূপান্তরিত করে এবং তাদের নাম পরিবর্তন করে:
- Attribute: Size
- Value: Quantity

যখন আপনার এক্সপোর্ট একাধিক অর্ডার করা প্রোডাক্ট আলাদা কলামে না রাখে আলাদা সারি-তে রাখে তখন এই ট্রান্সফরমেশনটি ব্যবহার করুন।
শিপিং ঠিকানা স্ট্রিং একাধিক ফিল্ডে বিভক্ত করা
প্রায় ৯০% কাঁচা ই-কমার্স ফাইল সম্পূর্ণ শিপিং ঠিকানা একটি একক স্ট্রিং-এ সংরক্ষণ করে। এই ফিল্ডটি বিভক্ত করলে রাজ্য-স্তরের ট্যাক্স রিপোর্টিং, শিপিং খরচ অপ্টিমাইজেশন, আঞ্চলিক পারফরম্যান্স বিশ্লেষণ এবং ম্যাপিং সম্ভব হয়।
ধাপসমূহ:
- Shipping Address কলামটি নির্বাচন করুন
- Home ট্যাবে যান >> Split Column >> By Delimiter নির্বাচন করুন

- আপনার ডেটার উপর ভিত্তি করে ডিলিমিটার ব্যবহার করুন যেমন:
- কমা (,)
- হাইফেন (-)
- লাইন ব্রেক
- কাস্টম সেপারেটর
- মौজूदा ডেটার জন্য Comma সেপারেটর হিসেবে নির্বাচন করুন
- OK ক্লিক করুন

- ফলাফলস্বরূপ কলামগুলোকে অর্থবহ লেবেল দিয়ে পুনঃনামকরণ করুন: Street, City, Postcode, এবং Country

একবার ঠিকানাগুলো বিভক্ত হলে, আপনি সিটি অনুযায়ী অর্ডার, জোন অনুযায়ী ডেলিভারি পারফরম্যান্স, অঞ্চল অনুযায়ী বিক্রয় এবং নির্দিষ্ট লোকেশন থেকে রিপিট কাস্টমার বিশ্লেষণ করতে পারবেন। এটি স্থানীয় ডেলিভারি ব্যবসা এবং অঞ্চল-ভিত্তিক বিক্রয় রিপোর্টিং-এর জন্য বিশেষভাবে উপকারী।
অ্যাডভান্সড নোট: সব ঠিকানা একই ফরম্যাটে নাও থাকে। কিছুতে অতিরিক্ত অংশ, অনুপস্থিত অংশ বা অ্যাপার্টমেন্টের বিবরণ থাকতে পারে। এই ক্ষেত্রে আপনি:
- বিভক্ত করার পর স্পেস ট্রিম করুন
- নির্বাচিত অংশগুলো আবার একসাথে মার্জ করুন
- Extract Text Before/After Delimiter ব্যবহার করুন
- অপवाद হ্যান্ডলিং-এর জন্য কাস্টম কলাম তৈরি করুন
ট্রিমিং, ক্লিনিং, এবং ডেটা টাইপ স্ট্যান্ডার্ডাইজ করা
বড় ই-কমার্স ডেটাসেটে, কাস্টমার নাম, SKU, ইমেইল ঠিকানা, এবং প্রোডাক্ট ক্যাটাগরিতে প্রায়শই শুরুর বা শেষের স্পেস, নন-প্রিন্টেবল ক্যারেক্টার, এবং অসঙ্গতিপূর্ণ ক্যাপিটালাইজেশন থাকে। ডেটা টাইপও মিসম্যাচ হতে পারে, যেমন সংখ্যাগুলো টেক্সট হিসেবে সংরক্ষিত থাকে।
এই ছোট ছোট সমস্যাগুলো বড় সমস্যা সৃষ্টি করতে পারে। একই ডেটা ভিন্ন ভিন্ন মান হিসেবে দেখা যেতে পারে, মার্জ অপারেশন ফেল করতে পারে, বা ডুপ্লিকেট গ্রুপ তৈরি করতে পারে।
ডেটা পরিশোধ:
- স্পেস ট্রিম করুন:
- টেক্সট কলামগুলো নির্বাচন করুন
- Transform >> Format >> Trim নির্বাচন করুন
- এটি শুরু এবং শেষ থেকে অতিরিক্ত স্পেস সরিয়ে দেয়

- লুকানো ক্যারেক্টার ক্লিন করুন:
- এই কলামগুলো নির্বাচিত থাকলে,
- Format >> Clean নির্বাচন করুন
- এটি নন-প্রিন্টেবল ক্যারেক্টার সরিয়ে দেয়
- কেসিং স্ট্যান্ডার্ডাইজ করুন:
- Transform >> Format >> নির্বাচন করুন:
- নামের জন্য Capitalize Each Word
- ইমেইলের জন্য প্রয়োজনে Lowercase

ডেটা টাইপ স্ট্যান্ডার্ডাইজ করা:
- তারিখের কলামগুলো নির্বাচন করুন
- Home ট্যাবে যান >> Data Type >> Date নির্বাচন করুন

- প্রয়োজনে কলাম যোগ করুন:
- Add Column ট্যাবে যান >> Date এক্সপ্যান্ড করুন
- Year, Month, Day, Quarter, Day of Week নির্বাচন করুন

- সংখ্যাসূচক কলামগুলো নির্বাচন করুন যেমন Quantity এবং Price
- কলাম হেডার আইকন এক্সপ্যান্ড করুন >> Decimal Number নির্বাচন করুন
- বা Transform ট্যাবে যান >> Data Type >> Decimal Number বা Whole Number নির্বাচন করুন

এই ট্রান্সফরমেশনটি অত্যাবশ্যক কারণ এটি গ্রুপিং, মার্জিং, ফিল্টারিং, এবং লুকআপ অপারেশনকে অনেক বেশি নির্ভরযোগ্য করে তোলে।
ডুপ্লিকেট সরানো এবং নাল মান হ্যান্ডল করা
ই-কমার্স ডেটায় নাল মান সাধারণ। কিছু হানিকারক নয়, অন্যদের ক্যালকুলেশন ভাঙে দেয়। পেমেন্ট গেটওয়ে এবং সিঙ্ক প্রসেস ডুপ্লিকেট OrderID তৈরি করতে পারে, এবং নাল কোয়ান্টিটি বা প্রাইস টোটাল এবং ভিজ্যুয়াল ভাঙতে পারে। যদি নাল মান সঠিকভাবে হ্যান্ডল না করা হয়, ফলাফল ভুল দিকনির্দেশক হতে পারে।
ডুপ্লিকেট সরানো:
- OrderID এবং OrderDate কী হিসেবে নির্বাচন করুন (এটি একই দিনের বৈধ রিপিট অর্ডার সরিয়ে ফেলা থেকে বাঁচায়)
- Home ট্যাবে যান >> Remove Duplicates নির্বাচন করুন

- শুধু পূর্নাঙ্গভাবে ভাঙা সারি সরান:
- Home ট্যাবে যান >> Remove Blank Rows নির্বাচন করুন (প্রথমে OrderID নাল থাকা সারি ফিল্টার আউট করুন)
মান রিপ্লেস করা:
- যদি ব্ল্যাংক ডিসকাউন্ট মানে কোনো ডিসকাউন্ট না থাকে, তাহলে নালকে ০ দিয়ে রিপ্লেস করুন
- সব Quantity এবং Price কলাম নির্বাচন করুন
- Transform ট্যাবে যান >> Replace Values নির্বাচন করুন:
- Value to find: null
- Replace with: 0

টেক্সট মান ক্লিন করা:
- অনাবশ্যক প্রিফিক্স যেমন Stock_ সরান
- Size কলাম নির্বাচন করুন
- Transform ট্যাবে যান >> Replace Values নির্বাচন করুন:
- Value to find: Stock_
- Replace with: (খালি রাখুন)

এখন Size মানগুলো পরিষ্কার এবং পঠনযোগ্য দেখা যাচ্ছে।

রিপিটেড মান ফিল ডাউন করা:
- কখনো কখনো শুধু অর্ডারের প্রথম সারিতে OrderID বা কাস্টমার নাম থাকে
- কলামটি নির্বাচন করুন
- Transform >> Fill >> Down নির্বাচন করুন
গুরুত্বপূর্ণ সতর্কতা: আঁখ বন্ধ করে সব নাল রিপ্লেস করবেন না। অনুপস্থিত মান "প্রযোজ্য নয়", "অজানা", বা ডেটা সমস্যা বোঝাতে পারে। মান রিপ্লেস করার আগে সর্বদা বিজনেস অর্থ বুঝে নিন।
ক্যালকুলেটেড কাস্টম কলাম তৈরি করা
ই-কমার্স ডেটা থেকে আপনি রেভেনিউ বা মার্জিন কলাম বের করতে পারেন। এক্সেল ফর্মুলা দিয়ে এটি করা যায়, কিন্তু রিফ্রেশ হলে সেগুলো টুটে যায়। পাওয়ার কোয়ারী কাস্টম কলাম অটোমেটিক্যালি রিক্যালকুলেট হয় এবং আপনার ETL পাইপলাইনের অংশ হিসেবে থাকে।
Net_Revenue:
- Add Column ট্যাবে যান >> Custom Column নির্বাচন করুন
- একটি নাম দিন
- নিচের ফর্মুলা ইনসার্ট করুন
[Unit_Price] * [Qty] * (1 - [Discount_Pct])

Gross_Margin:
[Net_Revenue] - ([Cost_Per_Unit] * [Qty])
Margin_Pct (%):
if [Net_Revenue] = 0 then 0 else [Gross_Margin] / [Net_Revenue]
- ডেটা টাইপ স্পষ্টভাবে সেট করুন: Net_Revenue এবং Gross_Margin Currency-এ, Margin_Pct Percentage-এ

গুরুত্বপূর্ণ: সবসময় ডিভিশন ফর্মুলায় গার্ড রাখুন। ডিনোমিনেটরে শূন্য থাকলে পাওয়ার কোয়ারী-তে পুরো কলামে এরর আসতে পারে এবং লোড করার সময় সারি ড্রপ হতে পারে। যেকোনো ক্যালকুলেটেড রেশিওর জন্য if [X] = 0 then null else … প্যাটার্ন ব্যবহার করুন।
হাই-পারফরম্যান্স সামারি টেবিলের জন্য গ্রুপিং এবং এগ্রিগেশন
লক্ষ লক্ষ সারির কাঁচা ই-কমার্স ফাইল রিপোর্ট ধীর করে দিতে পারে। গ্রুপিং দক্ষ সমষ্টিগত টেবিল তৈরি করে ড্যাশবোর্ডের জন্য, ড্রিল-থ্রু অ্যানালাইসিসের জন্য ডিটেইল্ড কোয়ারী সংরক্ষণ করে।
ধাপসমূহ:
- Transform >> Group By নির্বাচন করুন
- Category নির্বাচন করুন >> Add aggregation ক্লিক করুন:
- Net_Revenue-এর Sum
- Margin_Pct-এর Average
- Order_ID-এর Count (সারি)

- নতুন কোয়ারীটি Sales_Summary নামে নামকরণ করুন এবং মূল কোয়ারীটি Sales_Detail হিসেবে রাখুন ড্রিল-থ্রুর জন্য

প্রো টিপ: পাওয়ার বি-এ, ডিটেইল কোয়ারী-তে "Enable load" নিষ্ক্রিয় করুন এবং শুধু সামারি ও ডাইমেনশন টেবিল লোড করুন পারফরম্যান্স বাড়াতে।
শেষ ধাপ:
- Home ট্যাবে যান >> Close & Apply নির্বাচন করুন ডেটা লোড করার জন্য

উপসংহার
এখন আপনি এই ৫টি অত্যন্ত গুরুত্বপূর্ণ পাওয়ার কোয়ারী ট্রান্সফরমেশন ই-কমার্স বিক্রয় ডেটায় প্রয়োগ করতে পারেন। পাওয়ার কোয়ারী ই-কমার্স ডেটাসেট পরিশোধের সবচেয়ে কার্যকর টুলগুলির একটা কারণ এটি সিম্পল এবং কমপ্লেক্স উভয় ট্রান্সফরমেশন রিপিটেবল ভাবে হ্যান্ডেল করে। এটি ডেটা প্রস্তুতির সময় উল্লেখযোগ্যভাবে কমানো করতে পারে। এগুলো সাধারণ ক্লিন-আপ ধাপ নয়—এইগুলো সরাসরি রিয়েল-ওয়ার্ল্ড ই-কমার্স রিপোর্টিং চ্যালেঞ্জ সমাধান করে এবং ডাউনস্ট্রিম অ্যানালাইসিসকে অনেক বেশি দক্ষ করে তোলে। একবার এই ট্রান্সফরমেশনগুলোতে পারদর্শী হলে, আপনি প্রতিটি নতুন মার্কেটপ্লেস এক্সপোর্টের জন্য একটি রিযুজেবল পাওয়ার কোয়ারী টেমপ্লেট বানাতে পারবেন।