%读取带变量名的数据集的程序,寇文红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
 
 

%%读取表头
fid = fopen('D:\work\task\task_data\base_s_t.csv');%%nidnopen返回的文件标识符
%%%读取第一行
title = textscan(fid,'%s %s %s %s %s %s %s %s %s %s %s %s %s %s',1,'delimiter',','); %%%%%n——double %s——str%%%注意读取位置数据所在位置
fclose( fid );
%%读取数据
fid = fopen('D:\work\task\task_data\base_s_7.csv');%%nidnopen返回的文件标识符
base_d = textscan(fid,'%n %n %n %n %n %n %n %n %n %q %n %q %q %q','delimiter',',','HeaderLines',1);%%n——double %s——str
fclose(fid );

 
 

MATLAB——textscan的更多相关文章

  1. 【转】matlab的textscan与textread区别

    1.基本语法textscan的基本语法是:C = textscan(fid, 'format') C = textscan(fid, 'format', N) 其中fid为fopen命令返回的文件标识 ...

  2. matlab 中的textscan

    textread 与textscan的区别  textscan更适合读入大文件: textscan可以从文件的任何位置开始读入,而textread 只能从文件开头开始读入: textscan也可以从上 ...

  3. matlab各格式数据读取与保存函数

    数据处理及matlab的初学者,可能最一开始接触的就是数据的读取与保存: %matlab数据保存与读入 function datepro clear all; %产生随机数据 mat = rand(, ...

  4. MATLAB中提高fwrite和fprintf函数的I/O性能

    提高fwrite和fprintf函数的I/O性能 http://www.matlabsky.com/thread-34861-1-1.html     今天我们将讨论下著名的fwrite(fprint ...

  5. matlab中textread

    今天打算跑下程序,突然发现,真的很烂,不会读入数据,简单的Iris.txt一上午都没读进去,在此对matlab中的textread函数做下总结,textscan函数待续. 本文主要内容引自http:/ ...

  6. Matlab中的数据类型

    Matlab中有15种基本数据类型,主要是整型.浮点.逻辑.字符.日期和时间.结构数组.单元格数组以及函数句柄等.         1.整型:(int8:uint8:int16:uint16:int3 ...

  7. MATLAB importdata函数返回值类型

    importdata函数是MATLAB中I/O文件操作的一个重要函数.需要注意的是,针对不同的文件内容,importdata函数的返回值类型也有所不同. MATLAB帮助文档中的详细说明如下: Bas ...

  8. MATLAB cell 数组介绍

    转载:http://www.matlabsky.com/forum.php?mod=viewthread&tid=21089 由于工作需要,经常要处理大量的实验数据.基本都是由仪器导出来,随着 ...

  9. MATLAB介绍

    MATLAB MATLAB[1]  是美国MathWorks公司出品的商业数学软件,用于算法开发.数据可视化.数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink ...

随机推荐

  1. cocos2d-x 模态对话框的实现

    心情不好,恩.不扯淡了.直接讲. ================================== 在泰然看了一篇实现模态对话框的文章,写的还不错,然后在其基础上加了我简单加了一层灰色透明背景,这 ...

  2. Angularjs学习笔记5_scope和$rootScope

    $rootScope  $rootScope 是最顶级的scope,它对应着含有 ng-app 指令属性的那个DOM元素.     app.run(function($rootScope) {     ...

  3. 行为类模式(九):策略(Strategy)

    定义 针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换.策略模式使得算法可以在不影响到客户端的情况下发生变化. UML 优点 策略模式提供了管理相关的算法族的办法.策 ...

  4. git将本地项目添加到github上

    git init git add . git commit -m '添加备注' git add remote origin originUrl git push -u origin master 注意 ...

  5. Redis source code analysis

    http://zhangtielei.com/posts/blog-redis-dict.html http://zhangtielei.com/assets/photos_redis/redis_d ...

  6. Flink papers

    Around 2009 the Stratosphere research project started at the TU Berlin which a few years later was s ...

  7. JavaScript 记录页面停留时间-通过测试

    <html> <head> <meta http-equiv="Content-Type" content="text/html; char ...

  8. SecureCRT常用快捷键

    Alt + B + B --打开新连接 Ctrl + A --光标移到行首 Ctrl + E --光标移到行末 Ctrl + B --光标前移一个字符 Ctrl + F --光标后移一个字符 Ctrl ...

  9. kali64位 安装 adb

    1,adb只有32位的  ,下载地址http://dl.dbank.com/c0umekbpxi# 2,下载解压,但是执行adb命令时,报./adb: error while loading shar ...

  10. 【GitHub】常用命令

    克隆项目 git clone http://*git 把本地项目提交到远程 git add --all git commit -m "Initail commit" git pus ...