آسان‌ترین و سریع‌ترین راه تبدیل داده‌های سطری به ستونی

  • صفحه اول
  • آسان‌ترین و سریع‌ترین راه تبدیل داده‌های سطری به ستونی
image

آسان‌ترین و سریع‌ترین راه تبدیل داده‌های سطری به ستونی

  گاهی اوقات لازم است اطلاعاتی که از ترتیب سطری برخوردارند به ستونی تغییر یابند. این اطلاعات می‌تواند منشأ مختلفی داشته باشد مثلا در شبیه‌سازی با کد هسته‌ای Mcnp اگر کاربر خروجی را از طریق مش‌بندی استخراج کند در فایل خروجی mdata که توسط کد تولید می‌شود داده‌ها از نظم سطری برخوردارند و یا هنگام استفاده از داده‌های کتابخانه‌ ENDF داده‌ها از نظم سطری برخوردار هستند.

 گاهی اوقات لازم است اطلاعاتی که از ترتیب سطری برخوردارند به ستونی تغییر یابند. این اطلاعات می‌تواند منشأ مختلفی داشته باشد مثلا در شبیه‌سازی با کد هسته‌ای Mcnp اگر کاربر خروجی را از طریق مش‌بندی استخراج کند در فایل خروجی mdata که توسط کد تولید می‌شود داده‌ها از نظم سطری برخوردارند و یا هنگام استفاده از داده‌های کتابخانه‌ ENDF داده‌ها از نظم سطری برخوردار هستند. این در حالی است که هر گونه استفاده و یا رسم این اطلاعات مستلزم آن است که داده‌ها به صورت ستونی منظم شده باشند. روش‌های متعددی جهت دست‌یابی به این هدف ارائه شده‌اند. اما هر یک از این روش‌ها مشکلاتی به همراه دارد. به عنوان مثال یک روش ساده و پیش پا افتاده تبدیل ترتیب داده‌ها به صورت دستی است که مسلما اگر حجم اطلاعات زیاد باشد بسیار وقت‌گیر و خسته کننده است. یکی دیگر از این روش‌ها استفاده از زبان برنامه‌نویسی متلب و تغییر ترتیب داده‌ها به صورت ماتریسی است و در صورتی که کاربر این نرم‌افزار را بر روی سیستم خود نصب نداشته باشد و یا با این زبان آشنایی چندایی نداشته باشد این فرآیند بسیار وقت گیر و طاقت‌فرساست، بخصوص آن که متلب نرم‌افزار سنگینی است و نصب آن نیز از پیچیدگی‌هایی برخوردار است. روش دیگر آن است که کاربر با یک زبان برنامه‌نویسی دیگری برنامه‌ای بنویسد که این فرایند را انجام دهد، این روش نیز مستلزم آن است که کاربر بر یک زبان برنامه‌نویسی دیگری تسلط کافی داشته باشد و در غیر این‌صورت امکان پذیر نخواهد بود. روش متداول دیگر استفاده از نرم‌افزارهای جانبی نظیر kutools است که به صورت زبانه‌ای در اکسل ایجاد شده و این قابلیت را فراهم می‌کند اما این روش بخصوص زمانی که حجم داده‌ها زیاد باشد ممکن است از سرعت کندی برخوردار باشد. در این درس‌ آموز سعی بر آن است که روشی سر راست ارائه گردد تا کاربر را در کوتاه‌ترین زمان و بدون نیاز به مهارت و یا نرم‌افزار بخصوصی به هدف خود برساند.  این روش شامل فرمول‌نویسی در نرم‌افزار اکسل است و کاربر با یک فرمول ساده که در ادامه ارائه می‌گردد قادر به تبدیل داده‌های سطری به ستونی و یا برعکس می‌باشد.

 بیان مساله

 هر کاربری و با هر زمینه فعالیتی ممکن است گاه با داده‌هایی مواجه شود که از ترتیب سطری برخوردار است و لازم باشد ترتیب داده‌ها را از سطری به ستونی تبدیل نماید. لذا آگاهی از یک روش آسان و سریع در اینگونه مواقع بسیار کمک‌کننده است.

روش کار/ محاسبه

 روش پیشنهادی به منظور تبدیل داده‌های سطری به ستونی مطابق آنچه که در تصویر بخش 1-7) نشان داده‌ شده است، این است که پس از انتقال داده‌های سطری به نرم‌افزار اکسل، از فرمول زیر استفاده گردد:

 INDEX(M,INT((ROW(A6)-1)/n)+1,MOD(ROW(A6)1,n)+1)

 این فرمول در حالت کلی است و در آن  M بیانگر محدوده مورد نظر وn  بیانگر تعداد سطرها است. در مثال نشان داده شده فرمول بالا به صورت زیر درمی‌آید:

 INDEX($A$6:$C$7,INT((ROW(A6)-1)/3)+1,MOD(ROW(A6)-1,3)+1)

به این ترتیب کاربر بایستی در کنار داده‌ها و در یکی از سلول‌های خالی فرمول بالا را کپی پیست کرده و مقادیر A6 و C7 و n را متناسب با محدوده داده‌های خود اصلاح نماید. سپس با زدن کلید Enter اولین داده در این سلول نمایش داده می‌شود و سپس با کشیدن کادر مربعی کوچک در گوشه سمت چپ و پایین این سلول فرمول مذکور به ترتیب به سلول‌های بعدی منتقل شده و نتیجه مظلوب حاصل می‌گردد.