[英]Matlab script for reading a text file is not compatible with Octave
[英]error reading a text file in octave
我有一個名為xMat.txt
的文本文件,該文件在xMat.txt
中有200個空格分隔的元素,在某些行中有767行。
這就是xMat.txt
外觀。
386.0 386.0 388.0 394.0 402.0 413.0 ... .0 800.0 799.0 796
801.0 799.0 799.0 802.0 802.0 80 ... 399.0 397.0 394.0 391
.
.
.
當我嘗試使用X = dlmread('xMat.txt',' ')
以八度為單位讀取文件時,得到的矩陣大小為767 X 610
。 我希望矩陣的大小為767 X 200
因為一行中有200個元素。 我怎么解決這個問題?
編輯- 這是我的文件
您上傳的文件https://bpaste.net/raw/96cf21aa21b8每行的列數驚人。
$ awk "{print NF}" tmp | sort | uniq -c
2 200
754 201
1 206
1 217
1 223
1 234
1 237
1 238
1 269
1 273
1 390
1 420
1 610
因此,最多的行有201列,但一排有420列,一排甚至有610列。 這就是從dlmread獲得767x610矩陣的原因。
讓我們看看哪些行具有超過201列:
$ awk "{if (NF>201) print NR, NF}" tmp
68 217
580 206
613 390
615 234
657 273
676 610
679 237
720 269
722 238
743 223
762 420
第一個列顯示行號,第二個列顯示。 因此,您有610列的行是行號676。我也打印了行676:
因此您會看到它確實包含數據,沒有多個空格用零填充。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.