matlab指定间隔符,在matlab中为.dat文件指定小数分隔符[复制]

您必须以文本形式读取数据(使用textscan,textread,dlmread,

etc.)并转换为数字.

假设您已将数据读入单元格数组,其中包含单元格中的每个数字:

>> C = {'1,2345','3,14159','2,7183','1,4142','0,7071'}

C =

'1,2345' '3,14159' '2,7183' '1,4142' '0,7071'

使用strrep和str2double如下:

>> x = str2double(strrep(C,',','.'))

x =

1.2345 3.1416 2.7183 1.4142 0.7071

对于来自注释的示例数据,您有一个类似于以下内容的文件“1.dat”:

1,2 3,4

5,6 7,8

在这里你有一个空格作为分隔符.默认情况下,textscan使用空格作为分隔符,这样就可以了.您需要在下面更改的是数据中列数的格式说明符,方法是重复每列的%s(例如,这里我们需要’%s%s’代表两列):

>> fid = fopen('1.dat','r');

>> C = textscan(fid,'%s%s')

C =

{2x1 cell} {2x1 cell}

>> fclose(fid);

textscan的输出是由空格分隔的每列的单元格数组.将列组合成单个单元格数组并运行命令以转换为数字:

>> C = [C{:}]

C =

'1,2' '3,4'

'5,6' '7,8'

>> x = str2double(strrep(C,',','.'))

x =

1.2000 3.4000

5.6000 7.8000

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值