در Power BI، یکی از کلیدهای موفقیت در مدلسازی دادهها، درک درست از انواع ساختار داده و نحوه تمرکز بر آنهاست. این مقاله به بررسی پنج مفهوم پایهای در زبان M میپردازد:
- انواع تمرکز روی داده
- لیستها (Lists)
- رکوردها (Records)
- جداول (Tables)
- توالیها (Sequences)
انواع تمرکز روی دادهها در Power BI
در Power BI چهار نوع تمرکز اصلی هنگام تعریف دادهها و عملیات در Power Query وجود دارد:
نوع تمرکز | توضیح |
---|---|
سلولها (Cell-wise) | تمرکز بر یک خانه خاص از جدول |
ردیفها (Row-wise) | پردازش روی کل ردیف، معمولاً در قالب رکورد |
ستونها (Column-wise) | عملیات مثل محاسبه مجموع یا فیلتر کردن روی کل ستون |
کل جدول (Table-wise) | پردازش کامل جدول به عنوان یک شیء مجزا |
مثال:
Table.ColumnNames(MyTable)
این تابع تمرکز “Table-wise” دارد و تمام نامهای ستونهای جدول را باز میگرداند.
لیستها (Lists) در Power BI
لیستها مجموعهای از مقادیر تکی (Primitive Value) هستند، مانند
[۱, "A", true]
.
ویژگیها:
- فاقد ساختار جدولی یا کلید خاص
- قابل استفاده برای فیلتر، عملیات شرطی، شمارش
مثال:
List.Sum({1, 2, 3, 4}) // خروجی: ۱۰
رکوردها (Records)
رکورد مجموعهای از “کلید-مقدار” است، مانند:
[Name="Roozbeh", Age=43, IsActive=true]
کاربرد:
در مدلسازی ردیف محور، تنظیم دادهها برای یک شخص، محصول یا موجودیت خاص.
دسترسی:
myRecord[Name] // خروجی: "Roozbeh"
جداول (Tables)
جداول پایهایترین و پرکاربردترین ساختار در Power BI هستند. یک جدول مجموعهای از رکوردها با ستونهای همنام است.
مثال ساخت جدول:
Table.FromRecords({
[Name="Roozbeh", Age=43],
[Name="Ana", Age=41]
})
عملیات:
- فیلتر:
Table.SelectRows(...)
- گروهبندی:
Table.Group(...)
- ادغام (Join):
Table.Join(...)
توالیها (Sequences)
توالیها برای ساخت لیستهایی با الگوی عددی کاربرد دارند، مانند ساخت ایندکس یا محدوده زمانی.
مثال:
List.Generate(()=>1, each _ <= 10, each _ + 1)
خروجی: [۱, ۲, ۳, ..., ۱۰]
توالیها در زمانبندی، ساخت شماره ردیفها، یا تحلیل زمانی بسیار کاربردی هستند.
سوالات متداول (FAQ)
۱- آیا رکورد همان ردیف جدول است؟
رکورد نماینده یک ردیف است، اما خارج از جدول نیز قابل استفاده است؛ در Power Query میتوان رکورد مستقل ساخت.
۲- تفاوت لیست و جدول چیست؟
لیستها یکبعدی و فاقد ساختار هستند، در حالیکه جدولها شامل ردیفها و ستونها با نظم مشخصاند.
۳- چه زمانی از توالی استفاده کنیم؟
هنگام ایجاد لیستهای عددی خودکار، مانند شمارهگذاری، تحلیل روند، یا ساخت جدول زمانبندی.
۴- آیا این مفاهیم در زبان M هم کاربرد دارند؟
بله، در Power Query زبان M اساس کار با این ساختارهاست. بیشتر توابع سطح بالا از این ساختارها استفاده میکنند.
ارتباط و مشاوره
برای اطلاعات بیشتر و مشاوره میتوانید از طریق زیر با ما در ارتباط باشید:
نظری داده نشده