在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
%读取带变量名的数据集的程序,寇文红2007年5月24日于畅春园。
%这是一个读取数据集的程序,目的是把如下带变量名的数据矩阵读进MATLAB。
% <DTYYYYMMDD>,<TIME>,<OPEN>,<HIGH>,<LOW>,<CLOSE>,<VOL> % 20040615,212000,0.6987,0.6987,0.6986,0.6986,2 % 20040615,212100,0.6987,0.6987,0.6987,0.6987,1 % 20040615,212200,0.6988,0.6988,0.6987,0.6987,2 %这样在处理比较大、多的数据集时,就不需要把文件打开去掉最上面一行了。 tic
clear %用如下方来来读取,把CollectOutput设为0,则MATLAB会把每一列的数字返回成一个数组。
fid = fopen('E:\v time deformation\EURUSD.txt','r'); %打开要读取的数据集,'r'表示要读取打开文件,r是默认值。 C_text = textscan(fid,'%s',7, 'delimiter',','); %上句读取第一行的文字,即变量名。 C_data = textscan(fid,'%f %f %f %f %f %f %f','delimiter',',','CollectOutput', 0); %上句读取第2行以后的数据矩阵。 %其中设定'delimiter',','是因为原文件里每两个数据之间是用逗号隔开的。 %设定'CollectOutput'为默认值0,这样MATLAB把各列分别当作数组返回。 fclose(fid);
% C_text{:} %这一句返回数组C_text的全部内容(元素)。
% C_text{1} %这一句返回数组C_text第1列的内容(元素)。 % C_text(:) %这一列返回数组C_text的整体结构。 % C_text(1) %这一句返回数组C_text第1列的结构:{8x1 cell} % C_data{:} %查看数组C_data的全部元素,以一列一列的形式返回。
% C_data{1} %这一句返回数组C_fata第1列的内容(元素)。是一个列向量。 % C_data{4} %这一句返回数组C_data的第4列的元素。是一个列向量。 % C_data(:) %这一列返回数组C_data的整体结构。 % C_data(1) %这一句返回数组C_data的第1列的结构。 %现在可以把数组C_data的各列赋予新的名称。例如:
date = C_data{1}; time = C_data{2}; open = C_data{3}; high = C_data{4}; low = C_data{5}; close = C_data{6}; vol = C_data{7}; %以上分别是日期,时点,开盘价,最高价,最低价,收盘价,交易次数。 % 现在可以把上述各列数据组成一个新的数据矩阵,以便进一步分析之用。例如:
EURUSD = [date,time,open,high,low,close,vol]; % 也可以用EURUSD=cat(2,date,time,open,high,low,close,vol) 或EURUSD = horzcat(date,time,open,high,low,close,vol); %注意:如果在前面C_data=textscan那一行里所设定的各列数据的性质不一样,例如前三列是整数(%d),后四列是%f(小数), %则上句合并成矩阵时,最后四列数据将被取整。因此数据性质必须一致才行。 [rr,cc] = size(EURUSD) EURUSD(1:10,:) toc
%%读取表头
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论