یا دستوری هم هست این کار را به این صورت انجام بده که همه ستون ها را در یک ستون بچینه؟
این دستور فکر نکنم به صورت مستقیم وجود داشته باشه (تا اونجایی که من میدونم ..) اما میتونید کدش رو خودتون بنویسید .. دو تا حلقه تعریف کنید که یکی از اون ها مقادیر J رو اسکن کنه و یکی هم مقادیر I .. بعد همه ی ستون ها رو به ترتیب درایه در یه ماتریس سطری بنویسید و در آخر Transpose اون ماتریس میشه اونی که شما دنبالش هستید .. (منظورم از Transpose همون ترانهاده ی ماتریس هست .. ) .. یک راه دیگه هم وجود داره و اون اینکه شما با استفاده از همون دستور reshape این کار رو انام بدید منتهی اول ماتریستون رو Transpose کنید و بعد دستور reshape رو روش پیاده سازی کنید ..
دستور دوم را برای این می خوام کهeigefac e که تولید کردم ببین
اون لینک Tutorial ای که قبلا براتون گذاشته بودم (برای دانشگاه Drexel بود..) توضیحات خیلی خوبی برای این کار داده بود .. صـبر کنید .. البته صرفا توضیحات هم نبود .. در صفحات آخر کد پیاده سازی الگوریتمشون رو هم نوشته بودن و قرار داده بودن .. تصویر زیر قسمتی از اون کده که برای پیدا کردن EienFace ها نوشتن .. دستوراتش هم همه از دستورات پایه ی متلبه ..
از دستور reshape استفاده کرده و بعدش transpose ماتریس رو حساب کرده و در آخر هم Histogram Equalization رو بر روی تصویر پیاده سازی کرده .. اون لینکی هم که میگفتم براتون دوباره میذارم تا بتونید ازش استفاده کنید .. موفق باشید ..
سلام...
خیلی ممنون از پاسختون منظور من از سوال دوم این بود که آیا دستوری برعکس دستور reshape وجود داره یا نه قاعدتا باید در مطلب یه دستوری که هست برعکسشم باشه
سلام...
خیلی ممنون از پاسختون منظور من از سوال دوم این بود که آیا دستوری برعکس دستور reshape وجود داره یا نه قاعدتا باید در مطلب یه دستوری که هست برعکسشم باشه
سلام ...................
پاسختون منفیه .. دلیلش هم اینه که نیازی نیست .. همون دستور reshape کفایت میکنه .. خدمتتون که عرض کردم .. از خاصیت Transpose استفاده کنید .. موفق باشید ..
سلام..........
ببخشید مثل اینکه نتونستم منظورم را درست برسونم
ببینید منظورم از برعکس دستور reshape اینه که مثلا اگر دستور reshape تمام ستون های یک ماتریس را در یک سط قرار می ده وما یه ماتریس یک سطری داریم حالا دستوری هم هست که یک ماتریس یک سطری بهش بدیم و به ما یه ماتریس مثلا 3*4 بده
امیدوارم منظورم را رسونده باشم
با تشکر از حوصله شما
ببینید من منظور شمارو متوجه شدم منتهی مثل اینکه نتونستم منظور خودم رو برسونم ..
شما در پست اولتون پرسیده بودید که آیا دستوری هست که مثل دستور reshape عمل کنه اما برعکس؟ از چه جهت برعکس؟ خب دستور reshape چیکار میکرد؟ از منطر سطری درایه ها رو بر میداشت و با همون ترتیب توی یه ماتریس جدید چیدمان مجدد میکرد .. حالا اگه آرگومانی که توی دستور reshape موئید ستون بود رو یک میدادیم چه اتفاقی میفتاد؟ یه ماتریس تک سطری داشتیم که بهتر بود بهش میگفتیم بردار .. حالا سوال شما چی بود؟ این بود که آیا میشه این کار رو برعکس انجام داد یعنی از روی یه ماتریس مثلا 8*8 یه ماتریس ستونی بسازیم به این معنا که یک ستون داشته باشه و 64 سطر؟ این کار رو میشه انجام داد اما اینکه دستوری براش وجود داشته باشه به صورت مستقیم باید بگم که خیر چرا؟ چون با استفاده از یک رابطه ی Transpose معمولی میتونیم این کار رو انجام بدیم .. چطور؟
برگردیم به ابتدای ماجرا درست جاییکه ما یه ماتریس داریم و میخوایم ماتریس ستنونی اون رو بسازیم .. میدونیم که دستور reshape ای وجود داره .. میایم و ماتریس اولیه مون رو transpose میکنیم .. چه اتفاقی افتاد؟ جای سطر و ستون عوض شد .. حالا میایم و از دستور reshape استفاده میکنیم .. چی میشه؟ ماتریس جدید میشه آرایشی از درایه های ماتریس T شده ی ما .. چه نتیجه ای حاصل میشه؟ شما ماتریس T شده رو از منظر سطری چیدمان مجدد کردید .. اما این سطرها در ابتدا چی بودن؟ ستونها های ما .. پس در واقع چه اتفاقی افتاد؟ماتریس جدید بر حسب ستونهای اولیه ی ما چیدمان شدن .. حالا نتیجه ی نهایی چیه؟ یه بردار (یا همون ماتریس سطری..) اما این هدف اصلی ما نبود .. درسته .. کافیه که باز هم Transpose کنیم آنچیزی رو که به عنوان نتیجه در مقابل داریم .. در نهایت میبینیم که تونستیم اون کاری که خواستید رو با استفاده از همون دستور reshape انجام بدیم .. امیدوارم تونسته باشم منظورم رو منتقل کنم .. موفق باشید ..
سلام..........
ببیند منظور من این نبود
اگر خیلی ساده بگم این بود که فرض کنید ما یه ماتریس 56*1 داریم حالا می خوام با یه دستور این ماتریس را بکنم یه ماتریس 7*8
امیدوارم منظورم را رسونده باشم
سلام..........
ببیند منظور من این نبود
اگر خیلی ساده بگم این بود که فرض کنید ما یه ماتریس 56*1 داریم حالا می خوام با یه دستور این ماتریس را بکنم یه ماتریس 7*8
امیدوارم منظورم را رسونده باشم
سلام ...............
عذرخواهی بابت تاخیر .. چند روزیه خیلی شلوغ شدم!
ببینید من توی دوتا پست قبل توضیحات رو براتون گفتم اما مثل اینکه خیلی بد گفتم! برنامه ای که میخواستید رو براتون میذارم تا این بحث به سرانجام برسه .. یه ماتریس 24*1 و نتیجه یه ماتریس 4*6 .. اگه این مدت معطل شدید ؛ شرمنده .. موفق باشید ..
سلام............................
سال نو مبارک
بازم امسال با سوالای عجیب غریبم آمدم
میشه این دستور Index تو مطلب را توضیح بدهید
من که help مطلب را خوندم نفهمیدم
مثلا دستور های زیر
in = [1 2 3 4 5 6];
index = [];
for i = 0:max(gnd)-1
index = [index in+i*9];
end
دستور index توی تولباکس های مختلف کاربردهای مختلفی داره .. مثلا برای یه تصویر در حوزه ی Index Image این دستور میتونه ایندکس های رنگی رو بهمون بده .. امــا اینجا index ؛ دستور نیست بلکه یک آرایه هست .. درنتیجه دستوری وجود نداره که بخوایم ازش صحبت کنیم .. یک متغییر با ماهیت آرایه ای .. موفق باشید ..
یه PDF هست که این مبحث رو خیلی خوب توضیح داده .. نمیدونم اون رو براتون گذاشتم یا نه؟! توی مطالبم میگردم؛ پیداش که کردم میذارمش همینجا .. در مورد کد هم؛ باید برم دنبالش ببینم Source خوبی پیدا میکنم .. خبرش رو بهتون میدم .. موفق باشید ..
سلام..................
ممنون از فایلتون
این را قبلا خوندم
ببینید این ها آمدن یک جورایی مفهوم ICA را گفتن مثلا گفتن کواریانس را با استفاده از امید ریاصی حساب کردن که کد نوشتن یه کم سخته از روی این من یه چیزی شبیه به کار آقای نحوی در مورد PCA می خوام که مراحل را گفته باشه
سلام..................
ممنون از فایلتون
این را قبلا خوندم
ببینید این ها آمدن یک جورایی مفهوم ICA را گفتن مثلا گفتن کواریانس را با استفاده از امید ریاصی حساب کردن که کد نوشتن یه کم سخته از روی این من یه چیزی شبیه به کار آقای نحوی در مورد PCA می خوام که مراحل را گفته باشه
سلام .............
اون فایل خیلی خوبی بود .. باز من میگردم ببینم مطلب خوبی پیدا میکنم .. موفق باشید ..
دیدگاه