readtableで1行目だけを読み取りたい

60 visualizaciones (últimos 30 días)
KO
KO el 8 de Sept. de 2021
Comentada: KO el 8 de Sept. de 2021
Matlab R2016a使用者です.
readmatrixなどの関数はないので,readtableでcsvファイルの一部をインポートしたいのですが上手くできないことが多いです.
本来無視されるようなヘッダー情報をむしろ抽出したいので,
readtable(file_name,'HeaderLines',0)
このようにHeaderlineの指定を無くして読み込むのですが,数回に1度,1行目のヘッダーを読み込めないことがあります.
元のcsvデータが特殊で,ヘッダー行の上にさらにヘッダーが1セルだけある形式となっているためこのような不具合が起こるのでしょうか.
(m×n行列の左上に1×1のヘッダーが乗っている,といったデータ配列になっています.)
他に何か良い方法はありますでしょうか.
  3 comentarios
KO
KO el 8 de Sept. de 2021
はい、そうです。
ただ添付とは違い、列ベクトルのテーブルで、2行目にヘッダー行が来ます。
KO
KO el 8 de Sept. de 2021
readtable(file_name,'HeaderLines',0)
で基本的には、はみ出した1行目も読み取ることはできるのですが、なぜだか不具合も多いのです。
readtableは2019以降推奨されていないので、他の関数で代替できるものがあればと思っています。

Iniciar sesión para comentar.

Respuesta aceptada

Hernia Baby
Hernia Baby el 8 de Sept. de 2021
Editada: Hernia Baby el 8 de Sept. de 2021
ヘッダー名だけがほしいとのことなので、それ以降は数字かなと仮定しています
ここでは xlsread で文字だけをcell型で抽出します
ブラウザでは何故か csv形式を xlsread で読み込めないので xlsx形式を例にしています
[~,str,~] = xlsread('Sample_1.xlsx')
str = 2×6 cell array
{'Sample'} {0×0 char} {0×0 char} {0×0 char} {0×0 char} {0×0 char} {'a' } {'b' } {'c' } {'d' } {'e' } {'f' }
name = str(end,:)
name = 1×6 cell array
{'a'} {'b'} {'c'} {'d'} {'e'} {'f'}
  1 comentario
KO
KO el 8 de Sept. de 2021
ありがとうございます!xlsreadでうまくできました。
迅速にアドバイスいただきありがとうございました。

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre cell 配列 en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!