MATLAB入门-数据的导入和导出
注:本篇文章是课程学习笔记,课程链接为:头歌
常见的几个导入数据的方法
-
load函数
load函数专门用于引入MATLAB的.mat格式数据,十分的简单方便。
例如:一个-ASCII编码形式存储的数据文件student.mat,直接使用语句A=load('student.mat','-ascii');就可以将该数据导入到矩阵A中。
-
textread函数
是一种根据数据中重复出现的分隔符进行数据分类读取的方式。这个函数的使用方法有:
[A,B,C,......]=textread(filename,format)
[A,B,C,......]=textread(filename,format,N)
[...] = textread(...,param,value,...)
其中filename表示的是需要导入的文件名,而format是一种格式化输入规定,常见的规定有:
-
importdata函数
这个函数的用法为:
A=importdata(filename)
A=importdata('-pastespecial')
A=importdata(,delimiterIn)
A=importdata(,delimiterIn,headerlinesIn) -
dlmread函数
常用的方式为M=dlmread(filename),
常见的几个导出数据的方法
- save函数
最常用的函数之一,支持保存成.mat格式和.txt格式等。常用的形式为:
save(filename)和save(fielname,variables) - dlmwrite函数
常见用法为:dlmwrite(filename,M)
课后小练
导入一份给定的学生成绩单src/lesson3/student.mat,该文件在目录src/lesson3下,学生人数及课程数未知,只知道每一行代表一名学生的所有成绩,而且每一列代表不同课程的成绩。
导入一份给定的课程学分表src/lesson3/course_credit.mat,该文件在目录src/lesson3下,该数据只有一行,每一列代表一门课程的学分设置,数据个数保证和成绩单上的课程数一致。
对给定的所有学生的各门成绩分别进行加权平均,算出各自的学分绩,并且输出学分绩最低的同学的编号及学分绩。
所谓的学分绩就是将给定的所有门成绩,各自乘上对应的学分,再除以总的学分。例如1号同学的三门成绩分别为90、80和70,三门课程的学分分别为3、2、4,那么学分绩的计算公式为(90x3+80x2+70x4)/(3+2+4)= 78.89,这就是该同学的学分绩。
在右侧的代码窗口中是goals_least.m文件,你需要在提示的begin到end区域之间补齐对应的代码,使最后的结果与要求的输出结果一致。