نمایش نتایج 1 تا 29 از 29

نام تاپیک: ماتریس

  1. #1

    ماتریس

    سلا م خسته نباشید یه سوال داشتم اگه امکانش هست راهنمایی کنید ممنون میشم

    من یک سری داده به شکل ردیفی دارم

    1 2 3 4 5 6
    7 8 9 10 11 12

    حالا میخوام دو تا ماتریس به شکل زیر داشته باشم.

    a=[1 2 3

    5 4

    6] که بالا مثلثی هست حالا اون رو تبدیل به یک ماتریس کامل به شکل زیر کنه (با ترانهاده خودش جمع کنه منهای قطر اصلی):

    b=[1 2 3

    5 4 2

    6 5 1].در نهایت این ماتریس را میخوام.

    برای ردیف دوم هم به هم ین صورت

    9 8 a=[7

    11 10

    12]. این نیز بالا مثلثی هست

    نتیجه خروجی

    c=[7 8 9

    11 10 8

    [12 11 9

    خیلی خیلی ممنون میشم

  2. #2

    نقل قول: ماتریس

    سلام
    این تابع را برای همین کار می تونید استفاده کنید

    function mat_transformed = transform_matrix(data)
    n = numel(data);
    root_poly = roots([0.5 0.5 -n]);
    mat_size = root_poly(root_poly > 0);
    upper_mat = triu(ones(mat_size))';
    upper_mat(upper_mat > 0) = data;
    upper_mat = upper_mat';
    mat_transformed = upper_mat + upper_mat' - diag(diag(upper_mat));
    end

    نحوه استفاده:

    x = [1 2 3 4 5 6;
    7 8 9 10 11 12];
    transform_matrix(x(1, :))
    transform_matrix(x(2, :))

  3. #3

    نقل قول: ماتریس

    ببخشید اما هر کاری میکنم برنامه اجرا نمیشه ...حتی برای همین چند عددی که نوشتم ..
    لطفا بیشتر توضیح بدهید..داده های من به صورت خطی هستند و بعد میخوام در مرحله اول به صورت ماتریس بالا مثلثی و بعد به صورت ماتریس کامل تبدیل کنم (با ترانهاده جمع بشه منهای قطر اصلی)

  4. #4

    نقل قول: ماتریس

    نمیدونم چه قدر با متلب کار کردید
    اون تابع transform_matrix را در فایلی به نام transform_matrix.m ذخیره کنید
    مسیر جاری متلب را فولدری قرار بدهید که فایل m داخلش قرار داره و سپس اون دستور که نحوه استفاده هست را اجرا کنید

  5. #5

    نقل قول: ماتریس

    من در حد مبتدی کار کردم ببخشید اما با اون تابع در جای ذخیره کنم که متلب نصب شده یا فرقی نمیکنه ..
    منظورتو رو هم از مسیر جاری متلب نفهمیدم ...
    معذرت میخوام اگه امکانش هست بیشتر توضیح بدید..
    ممنون

  6. #6

    نقل قول: ماتریس

    ببینید یک فولدر در درایو d درست کنید مثلا به نام workmatlab
    فایل m را داخل اون بذارید
    بعد در متلب این دستور را بزنید

    cd('D:/workmatlab')

    تا مسیر جاری شما همین فولدر بشه فکر کنم آیکنش هم اون بالا باشه

  7. #7

    نقل قول: ماتریس

    این خطایی هست که میده ممنون میشم اگه لطف کنید Capture.PNG

  8. #8

    نقل قول: ماتریس

    فایل m را گذاشتم داخل زیپ
    http://www.sharefile.ir/uploads/1432537629.zip

  9. #9

    نقل قول: ماتریس

    ببخشید اجراشد ممنون دستتون درد نکنه..
    اما خروجی ها را میخوام همه رو نشان بده به صورت جدا گانه ...اگه در یک جدول به صورت جدا گانه نمایش بده که عالی میشه...
    بازم ممنون

  10. #10

    نقل قول: ماتریس

    الان دیگه جواب ماتریس چاپ می شه خود متلب امکانات طراحی gui داره که می تونید نتایج را ببرید داخل مثلا یک فرم و کارهایی تزئینی را اونجا انجام بدید که فکر کنم یه کم لازمه روی اون کار کنید

  11. #11

    نقل قول: ماتریس

    ممنون ببخشید که مزاحمتون شدم لطف کردید....
    اما اینکه ماتریس ها وارد یک فرم بشن باید خودم یکی یکی وارد کنم یا دستور داره

  12. #12

    نقل قول: ماتریس

    دستور داره . توی هلپ متلب و اینترنت منابعش زیاد هست الان من با octave این برنامه را نوشتم که این امکانات فرم را نداره

  13. #13

    نقل قول: ماتریس

    خیلی ممنون ...یه سوال دیگه این دستور برای هر ردیف باید اجرا بشه نمیشه اون رو داخل یک حلقه قرار داد...

  14. #14

    نقل قول: ماتریس


    x = [1 2 3 4 5 6;
    7 8 9 10 11 12];
    for i = 1: size(x,1)
    disp(transform_matrix(x(i, :)))
    end

  15. #15

    نقل قول: ماتریس

    خیلی ممنون درست شد ...دستت درد نکنه

  16. #16

    نقل قول: ماتریس

    بازم سلام
    اگه بخوام خروجی برنامه بالا را در یک ماتریس 3*5 ضرب کنم مانند ماتریس زیر b (البته تک تک خروجی ها را جدا ضرب کنه):[2 3 4;
    5 6 7;
    8 9 10;
    11 12 13;
    14 15 16]
    و بعد ضرب ترانهاده b بشه...
    یا به اصلاح 'd=b*a*b

  17. #17

    نقل قول: ماتریس

    سلام
    پیشنهاد می کنم یه جزوه آموزش مقدماتی matlab را مطالعه کنید فکر نکنم زمان چندانی ببره

    b=[2 3 4;
    5 6 7;
    8 9 10;
    11 12 13;
    14 15 16]
    a= transform_matrix(x(1, :));
    d = b * a * b';
    disp(d)

  18. #18

    نقل قول: ماتریس

    سلام چشم حتما اما فعلا برای کار پایان نامه مم باید زود انجام بدم...
    اگه میشه یه حلقه واسه این تشکیل بدین وخروجی را در یک جدول بهم بده....
    واقعا ممنون میشم ...

  19. #19

    نقل قول: ماتریس

    نقل قول نوشته شده توسط emranrostami مشاهده تاپیک
    سلام چشم حتما اما فعلا برای کار پایان نامه مم باید زود انجام بدم...
    اگه میشه یه حلقه واسه این تشکیل بدین وخروجی را در یک جدول بهم بده....
    واقعا ممنون میشم ...
    خب حلقه که مثل مثال قبلیه
    برای جدول هم نتایج را می تونید کپی کنید داخل ورد در اونجا جدول بکشید

  20. #20

    نقل قول: ماتریس

    متاسفانه حلقه تشکیل نمیشه ....اگر کمکم کنید و این رو هم بنویسید واقعا لطف بزرگی در حقم کردین...

  21. #21

    نقل قول: ماتریس

    مگه حلقه را چه جوری نوشتید که تشکیل نمی شه؟

  22. #22

    نقل قول: ماتریس

    درست شد...اگه درست نوشته باشم... بی زحمت یه نگاه بندازین
    (for i = 1: size(x,1
    ;((:,a= transform_matrix(x(1
    ;'d = b * a * b
    (disp(d
    end

  23. #23

    نقل قول: ماتریس

    آفرین دیدی میتونی بنویسی:)
    فقط یه اشکال کوچیک بود به جای 1 لازمه i استفاده کنی

    b=[2 3 4;
    5 6 7;
    8 9 10;
    11 12 13;
    14 15 16];

    x = [1 2 3 4 5 6;
    7 8 9 10 11 12];
    for i = 1: size(x,1)
    a= transform_matrix(x(i, :));
    d = b * a * b';
    disp(d)
    end

  24. #24

    نقل قول: ماتریس

    واقعا ازتون ممنونم ....لطف خیلی خیلی بزرگی درحقم کردین ....خیلی خیلی متشکرم

  25. #25

    نقل قول: ماتریس

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

  26. #26

    نقل قول: ماتریس


    b=[2 3 4;
    5 6 7;
    8 9 10;
    11 12 13;
    14 15 16];

    x = [1 2 3 4 5 6;
    7 8 9 10 11 12];
    d=[];
    for i = 1: size(x,1)
    a= transform_matrix(x(i, :));
    d(:, :, i) = b * a * b';
    end
    miangin = mean(d, 3);
    disp(miangin)

  27. #27

    نقل قول: ماتریس

    خیلی خیلی ممنون ...واقعا کمال تشکر را دارم از شما ...کمک خیلی بزرگی بهم کردین

  28. #28

    نقل قول: ماتریس

    بازم سلام ...یه سوال داشتم این عدد سه کد خاصی هست یا باید تغییرش بدم برای هر ماتریس......
    ;(miangin = mean(d, 3

  29. #29

    نقل قول: ماتریس

    سلام. لازم نیست تغییر پیدا کنه یعنی از بعد سوم میانگین می گیره

تاپیک های مشابه

  1. پیاده سازی یک ماتریس خلوت
    نوشته شده توسط maryam206 در بخش برنامه نویسی با Borland C++‎ Builder
    پاسخ: 5
    آخرین پست: چهارشنبه 11 فروردین 1389, 13:15 عصر
  2. دترمینان ماتریس n*n
    نوشته شده توسط Buggsbunny در بخش الگوریتم، کامپایلر، هوش مصنوعی و ساختمان داده ها
    پاسخ: 7
    آخرین پست: یک شنبه 17 شهریور 1387, 16:29 عصر
  3. تبدیل تصاویر به ماتریس و برعکس
    نوشته شده توسط whitehat در بخش برنامه نویسی در Delphi
    پاسخ: 9
    آخرین پست: چهارشنبه 22 مهر 1383, 22:48 عصر
  4. ماتریس
    نوشته شده توسط در بخش برنامه نویسی در Delphi
    پاسخ: 13
    آخرین پست: سه شنبه 25 شهریور 1382, 01:03 صبح
  5. ماتریس ها در OpenGL
    نوشته شده توسط Vahid_Nasiri در بخش طراحی و ساخت بازی‌های کامپیوتری
    پاسخ: 0
    آخرین پست: پنج شنبه 12 تیر 1382, 00:57 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •