找回密码
 注册
关于网站域名变更的通知
查看: 449|回复: 3
打印 上一主题 下一主题

如何去掉txt文件里不想要的字符,和去掉这行

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-12-18 13:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

- ~' q" A4 X0 L7 s* \8 R. C" b) p比如我有个txt文件有3列的数据,前两列都是double型的数字,第三列有数字也有N.C.这样的字符串。如下所示(行数很多很多,为了方便举例只取前几行):/ D: |2 ^8 H. o* _
$ i/ ]4 X, y- ]! _1 u& ^/ K
543.6 765.4 65
* ?. R3 k# o& M( c765.0 865.0 N.C." Q% d+ U+ A) ?! \& o
654.8 762.3 54
, d' K6 _8 K' k. Y& p587.0 844.0 50
& ~3 j7 h. a7 L2 K2 }) \2 [254.0 765.0 N.C.
8 b8 c% ]! t8 L( u( ]& r……8 d6 A. Q  V* f, z7 {& v
- ^" s! V2 ]5 F  v  r% ?
我用testscan函数可以很容易的读取前两行,但第三行有数字有字符串就不太好处理。
3 @1 e: N" c4 R6 k( s6 h. c$ r+ n; O% e5 P' t
请问如何把有N.C.的行给去掉呢?比如上例最终为:
6 J3 J  B1 {  k: N6 T; B- ?- ]5 u: H, ]+ ~* B7 u' L2 V2 W, Y3 [
543.6 765.4 65
+ h% f" ?3 V6 ?. j$ F/ w0 p# c, K) y654.8 762.3 54
6 @( [, Y4 i" S: k; g7 r9 w587.0 844.0 50

该用户从未签到

4#
发表于 2020-12-18 16:07 | 只看该作者
fid = fopen('新建文本文档.txt');
$ {/ R9 H/ P5 u3 b/ Odata =textscan(fid,'%s %s %s');. [1 @1 p1 R: R3 |0 U9 P' k6 e
a = data(1,[1,2]);
& d5 b, ]" A% f. u  F9 `+ w0 J6 i4 ]aa = cell2mat(cellfun(@(x) str2num(char(x)),a,'UniformOutput',false));( b2 A' K. k7 {) s6 D
b = data{:,3};
0 R0 Q0 t0 A0 a, d5 n8 Qc = cellfun(@(x) str2num(char(x)),b,'UniformOutput',false);
: j. c( _! V1 o+ I6 pindex=cell2mat(cellfun(@(x) ~isempty(x),c,'UniformOutput',false));
, }2 a# H7 ~1 G) q# [0 C) _result = [aa(index,: ), vertcat(c{index})];
( c- e# f+ o4 v+ a7 hfclose(fid);
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-11 18:45 , Processed in 0.093750 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表