matlab读取第一行是汉字csv,在MATLAB中使用`textscan`从csv文件中读取数据

在MATLAB中尝试使用`textscan`函数读取包含汉字csv文件时遇到问题,只获取到了第二行数据。通过对比测试,发现当csv文件的第一行是汉字时,代码无法正常工作。解决方案是重新复制数据并保存为新文件,此时问题消失。可能的原因与文件编码或文本编辑器有关。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[已编辑:]我有一个文件data2007a.csv,我将第一个连续的几行复制并粘贴(使用MacBook中的TextEdit)到新文件datatest1.csv进行测试:

Nomenclature,ReporterISO3,ProductCode,ReporterName,PartnerISO3,PartnerName,Year,TradeFlowName,TradeFlowCode,TradeValue in 1000 USD

S3,ABW,0,Aruba,ANT,Netherlands Antilles,2007,Export,6,448.91

S3,ABW,0,Aruba,ATG,Antigua and Barbuda,2007,Export,6,0.312

S3,ABW,0,Aruba,CHN,China,2007,Export,6,24.715

S3,ABW,0,Aruba,COL,Colombia,2007,Export,6,95.885

S3,ABW,0,Aruba,DOM,Dominican Republic,2007,Export,6,11.432

我想使用textscan将其读入MATLAB,仅使用第2,3,5列(从第二行开始)并编写以下代码

clc,clear all

fid = fopen('datatest1.csv');

data = textscan(fid,'%*s %s %d %*s %s %*[^\n]',...

'Delimiter',',',...

'HeaderLines',1);

fclose(fid);

但我最后只得到第2,3和5列的第二行:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值