logo03-1-1logo03-1-1logo03-1-1logo03-1-1
  • خانه
  • دسته بندی محصولات
    • کد های آماده متلب بهمراه فایل های آمورشی
    • الگوریتم های فرا ابتکاری و کاربرد های آن
    • شبکه عصبی
    • تصمیم گیری چند معیاره
    • مقالات شبیه سازی شده با متلب
    • جدیدترین مقالات ISI همراه با ترجمه
    • پروژه های درسی
      • پروژه های آماده رشته علوم انسانی
      • پروژه های آماده رشته علوم مهندسی
      • پروژه های آماده رشته علوم پایه
    • متفرقه
  • پروژه های رایگان
  • آموزش متلب
    • آموزش مقدماتی متلب
    • آموزش تخصصی نرم افزار متلب
    • الگوریتم فراابتکاری در متلب
    • ساخت رابط گرافیکی GUI در متلب
    • کاربرد متلب در مهندسی
      • پردازش تصویر در متلب
      • پردازش سیگنال در متلب
      • سیمولینک متلب
    • آموزش متلب در تلگرام
  • نظرات مشتریان
  • درخواست کدنویسی
  • همکاری با ما
  • قوانین سایت
  • تماس با ما
  • صفحه نخست
  • درباره ما
  • نظر مشتریان
  • سوالات متداول
0
905550 ایمپورت داده در متلب (قسمت دوم)
ایمپورت داده ها در متلب
اسفند ۸, ۱۳۹۷
داده های رشته ای در متلب
اسفند ۲۴, ۱۳۹۷
Published by pooya pooya at اسفند ۱۵, ۱۳۹۷
Categories
  • کار با داده ها در متلب
Tags
    905550 ایمپورت داده در متلب (قسمت دوم)

    ایمپورت داده در متلب (قسمت دوم)

    در بخش اول از آموزش ایمپورت داده در متلب ، با انواع فایل های ورودی به نرم افزار متلب آشنا شدیم . همچنین با تابع پر کاربرد importdata کار کردیم و در قالب مثال ، این تابع را مورد تجزیه و تحلیل قرار دادیم .

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

    مثال 3 :

    در این مثال می خواهیم اطلاعات موجود در کلیپ برد سیستم را مورد استفاده قرار دهیم . برای این جمله زیر را در کلیپ برد سیستم (با فشردن دکمه های ctrl+c) قرار می دهیم :

    matlabshop website

    سپس یک فایل اسکریپت ساخته و کد های زیر را در آن قرار می دهیم :

    A = importdata('-pastespecial')

    حال فایل را ذخیره و اجرا نموده و در خروجی عبارت زیر را خواهیم داشت :

    A =
    
      cell
    
        'matlabshop website'

    در بالا با روش کار با کلیپ برد نیز آشنا شدیم . در ادامه آموزش ایمپورت داده در متلب ، می خواهیم با سایر توابع مورد استفاده برای کار با داده های ورودی آشنا شویم :

    توابع سطح پایین برای کار با I/O :

    تابع importdata که در بخش اول آموزش با آن آشنا شدیم ، یک تابع سطح بالا (high level) محسوب می شود. توابع سطح پایین (low level) برای ورودی/خروجی فایل در متلب وجود دارد که ابتکار عمل بیشتری برای خواندن و نوشتن بر روی فایل ها به ما می دهد.

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

    1- fclose :

    بستن یک یا تمام فایل های باز

    2- feof :

    آزمایش برای پایان فایل

    3- ferror :

    اطلاعات در مورد خطاهای I/O فایل

    4- fgetl :

    خواندن یک سطر از فایل و حذف کاراکتر های سطر جدید

    5- fgets :

    خواندن یک سطر از فایل و نگاه داشتن کاراکتر های سطر جدید

    6- fopen :

    باز کردن فایل یا دریافت اطلاعات در مورد فایل باز شده

    7- fprintf :

    نوشتن اطلاعات در فایل متنی

    8- fread :

    خواندن اطلاعات از یک فایل باینری

    9- fscanf :

    خواندن اطلاعات از فایل متنی

    10 – fseek :

    رفتن به یک موقعیت خاص از فایل

    11- fwrite :

    نوشتن اطلاعات در یک فایل باینری

     

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

    مثال 4 : 

    ما فایلی به نام myfile.txt در دایرکتوری جاری داریم که شامل اطلاعات بارندگی در سه ماه june ، july  و auguest سال 2018 است .

    این اندازه گیری در ساعت خاص و در 5 نقطه اندازه گیری شده است . تعداد ماه ها در M ذخیره شده است.

    فایل متنی به شکل زیر است :

    Rainfall Data
    Months: June, July, August
     
    M = 3
    12:00:00
    June-2018
    17.21  28.52  39.78  16.55 23.67
    19.15  0.35   17.57  NaN   12.01
    17.92  28.49  17.40  17.06 11.09
    9.59   9.33   NaN    0.31  0.23 
    10.46  13.17  NaN    14.89 19.33
    20.97  19.50  17.65  14.45 14.00
    18.23  10.34  17.95  16.46 19.34
    09:10:02
    July-2018
    12.76  16.94  14.38  11.86 16.89
    20.46  23.17  NaN    24.89 19.33
    30.97  49.50  47.65  24.45 34.00
    18.23  30.34  27.95  16.46 19.34
    30.46  33.17  NaN    34.89  29.33
    30.97  49.50  47.65  24.45 34.00
    28.67  30.34  27.95  36.46 29.34
    15:03:40
    August-2018
    17.09  16.55  19.59  17.25 19.22
    17.54  11.45  13.48  22.55 24.01
    NaN    21.19  25.85  25.05 27.21
    26.79  24.98  12.23  16.99 18.67
    17.54  11.45  13.48  22.55 24.01
    NaN    21.19  25.85  25.05 27.21
    26.79  24.98  12.23  16.99 18.67

    ما فایل را ایمپورت کرده و اطلاعات را نمایش می دهیم . برای این کار گام های زیر را باید انجام دهیم :

    1- با تابع fopen  فایل را باز میکنیم

    2- با استفاده از “شاخص های فرمت” فایل را توصیف می کنیم . شاخص هایی مثل %s برای رشته ، %d برای اعداد صحیح و %f برای اعداد اعشاری شناور.

    3- برای رد کردن کاراکترهای حرفی می توانیم از آن ها استفاده نماییم . در واقع اگر بخواهیم داده های رشته ای را رد کنیم باید از عبارت %*s استفاده نماییم . برای مثال اگر بخواهیم مقدار M از فایل بالا بخوانیم باید عبارت زیر را بنویسیم :

    M = fscanf(fid, '%*s %*s\n%*s %*s %*s %*s\nM=%d\n\n', 1);

    متن زیر را در متلب وارد می کنیم :

    filename = '/data/myfile.txt';
    rows = 7;
    cols = 5;
     
    % open the file
    fid = fopen(filename);
     
    % read the file headers, find M (number of months)
    M = fscanf(fid, '%*s %*s\n%*s %*s %*s %*s\nM=%d\n\n', 1);
     
    % read each set of measurements
    for n = 1:M
       mydata(n).time = fscanf(fid, '%s', 1);
       mydata(n).month = fscanf(fid, '%s', 1);
     
       % fscanf fills the array in column order,
       % so transpose the results
       mydata(n).raindata  = ...
          fscanf(fid, '%f', [rows, cols]);
    end
    for n = 1:M
       disp(mydata(n).time), disp(mydata(n).month)
       disp(mydata(n).raindata)
    end
     
    % close the file
    fclose(fid);

    در خروجی داریم :

    12:00:00
    June-2012
       17.2100   17.5700   11.0900   13.1700   14.4500
       28.5200       NaN    9.5900       NaN   14.0000
       39.7800   12.0100    9.3300   14.8900   18.2300
       16.5500   17.9200       NaN   19.3300   10.3400
       23.6700   28.4900    0.3100   20.9700   17.9500
       19.1500   17.4000    0.2300   19.5000   16.4600
       0.3500   17.0600   10.4600   17.6500   19.3400
    
    09:10:02
    July-2012
       12.7600       NaN   34.0000   33.1700   24.4500
       16.9400   24.8900   18.2300       NaN   34.0000
       14.3800   19.3300   30.3400   34.8900   28.6700
       11.8600   30.9700   27.9500   29.3300   30.3400
       16.8900   49.5000   16.4600   30.9700   27.9500
       20.4600   47.6500   19.3400   49.5000   36.4600
       23.1700   24.4500   30.4600   47.6500   29.3400
    
    15:03:40
    August-2012
       17.0900   13.4800   27.2100   11.4500   25.0500
       16.5500   22.5500   26.7900   13.4800   27.2100
       19.5900   24.0100   24.9800   22.5500   26.7900
       17.2500       NaN   12.2300   24.0100   24.9800
       19.2200   21.1900   16.9900       NaN   12.2300
       17.5400   25.8500   18.6700   21.1900   16.9900
       11.4500   25.0500   17.5400   25.8500   18.6700

     

     

     

    Share
    0
    pooya pooya
    pooya pooya

    Related posts

    905550 ایمپورت داده ها در متلب
    اسفند ۸, ۱۳۹۷

    ایمپورت داده ها در متلب


    Read more

    دیدگاهتان را بنویسید لغو پاسخ

    نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

    تماس باما

    اصفهان- بلوار کاوه ابتدای خیابان جابر انصاری دفتر موسسه تحلیل آمارگران

    9385162583 (98+)

    info@shopmatlab.ir

    پشتیبانی تلگرام
    پشتیبانی واتس آپ
    ارتباط با کارشناسان

    امکانات وب سایت

    linkedin telegram instagram twitter facebook

    بخش های سایت

    • دانلود رایگان
    • آموزش های رایگان متلب
    • قوانین وب سایت
    • درخواست کدنویسی
    • نظرات مشتریان

    پایانه پرداخت

    آرین پالزرین پال

    تمام حقوق محفوظ است