• ベストアンサー

MATLABでテキストに書き出す時1.00e+2を100にする方法

MATLABで計算したデータを save ファイル名 変数名 -ascii で書き出そうとしたのですが できたファイルの中身がe+を使った表示になってしまいます。 具体的には'341'が'3.4100000e+2'のように表示されてしまいます これを'341'とファイルに出力時に表示させるにはどうすれば良いのでしょうか?知っている方がいたら教えてください!

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

フォーマットを指定した出力はfprintfだと思います。 save/loadは、基本的に他のプログラムや他のマシンのmatlabとデータをやり取りするためのもので、人間が読むことは二の次です。

RUNTA_
質問者

お礼

おっしゃる通りです。m(_ _)m ありがとうございました。

関連するQ&A

  • MATLAB でのデータ保存について

    MATLAB でシミュレーションを行なっているのですが データの保存方法がいまいちわかりません. グラフに出力してグラフを保存する事はできるのですが データを数値としても保存しておきたいので. save [ファイル名] [変数名] -ascii としても見やすいデータではないので なにかいいデータの保存方法はありませんか? データの利用法は OpenGL によるアニメーションのためです. よろしくお願いします.

  • MATLABのsaveでファイル名を試行ごとに変えたい

    MATLABを使ってるんですが,変数を保存するとき, saveコマンドで, save 'filename.txt' A -ASCII -TABS で,Aのデータがfilename.txtに保存されますよね. で,このfilenameの名前を試行ごとに変えたいのですが,やりかたが分からないので教えてほしいです. 想像だと, save 'filename%d.txt' ~ みたいな感じで毎回違う数字をファイル名に入力できるかと考えたんですが,書き方がわかりませんでした. もしくは,ファイルを出力するフォルダを指定する方法などもわかるとうれしいです. お願いします.

  • matlab ファイル名 読み込み

    matlabでファイルを読み込むときに、ファイル名を変数内に格納する方法を教えていただけないでしょうか。 その変数を利用して、出力ファイル名を操作したいと考えています。 宜しくお願いします。

  • MATLABの2つのプログラム間でデータのやりとり

    MATLABで同時に2つのプログラムを動かし、プログラム間でデータのやりとりをしたいです。 例えば、片方でsave data.mat、もう片方でload data.matとすると、 data.mat書き込み中にアクセスすることがあるため、 以下の(1)~(3)のようなエラーメッセージが出ます。 (1)エラー load MAT ファイル data.mat を読み込むことができません。 ファイルが壊れている可能性があります。 (2)エラー load ASCII ファイル data.mat の 2行目の列数は、前の行と同じでなければなりません。 (3)エラー load MAT ファイル data.mat を読み込めません:2 進数の MAT ファイルではありません。 テキストとして読み込むために LOAD -ASCII を試してください。 なにか、うまい方法は無いでしょうか? ちなみに、プログラムはMATLAB Compilerを利用し、いずれも24時間動きっぱなしにすることを想定しています。

  • MATLABの使い方

    純粋な数学の質問じゃなくて申し訳ないのですが、数学に関することなのでここで質問させていただきました。MATLABを使って以下のことを計算させたいのですが、その入力の仕方を教えてください。 1.以下の近似値を求めよ。 (1)e=lim[n→∞](1+1/n)^n (2)e=Σ[n=0→∞]1/(n!) (3)π=4(1-1/3+1/5-1/7+…) (4)π=4{4(1/5-1/(3・5^3)+1/(5・5^5)-…)-(1/239-1/(3・239^3)+1/(5・239^5)-…)}  (5)100^(1/9) (6)5^(-x)=x 2.以下の関数のグラフを表示させる  (1)e^(-x)・Arctanx (-5≦x≦5)  (2)x=(t^2-t-3)e^(t)・cost,y=(t^2-5t+1)e^(t)・sint (-1≦t≦10) MATLABに関してはまったくの初心者なので、できれば入力方法を具体的に示していただければ幸いです。よろしくお願いします。

  • matlabでの長時間の計算について

    すみません、現在matlabで数値解析を行っております。 質問を以下にまとめたので、よろしければアドバイスをお願いします。 -------------------------------------------------------------- matlabで数十分かかると考えられる計算を行おうとしています。 その場合、計算後の大容量のデータは一般的にどのように保存すべきでしょうか? これまで、パラメータを50個用意してそれぞれ計算を行い、 後に見比べるために、目的の変数の値をプロットし、画像(角度などを指定してjpegに)として保存していました。 (for文を使って一定量パラメータを変化させる毎に、saveasを使ってグラフを保存していた。) 今まではパラメータ1つあたり数十秒程度で済む計算だったのでこれでも良かったのですが、 今後はパラメータ1個あたりに対しかかる計算時間が数十分になります。。 そこで、今までと同じように保存していくやり方では、もしグラフの保存方法(角度など)を間違えてしまった場合に かなりの損失になってしまうと思ったので質問しました。。 何か効果的なデータの保存の仕方はありませんでしょうか? 以後もパラメータをfor文を使って一定量変化させ、50個用意して計算していこうと思うのですが・・ 一応現状で考えているのは、saveを使ってworkspace内の変数(全て)をそれぞれ保存していくというものです。 何かその他に効果的なデータの保存方法などありましたら是非教えてください。 -------------------------------------------------------------- 上記のように、 計算時間のかかる計算をmatlabを使って行おうと考えているのですが、 計算機を走らせている間、動作が著しく重くなり、ほとんど他の作業が出来なくなります。 (これは避けられませんよね・・?) 私はmatlabを学校で使っているので、帰宅する際、計算機を走らせて帰ろうと考えています。 (節電家でなくてすみません。。) 問題は途中でメモリ不足などで計算がストップしてしまわないかということです・・ 一応、パラメータを変える毎に初期化すべき変数はzerosを使って初期化しているのですが、 パラメータ毎の目的の変数(6つ)は、多いとそれぞれ10^6×200ほどの配列となる可能性があります。 せっかく手間暇かけて走らせたのに、途中でメモリ不足などと表示されたら辛いなぁと思い・・ 現在使っている計算機はubuntu11.04で、メモリは992.8MiBなのですが、やはりこの計算機だと際どいでしょうか・・? -------------------------------------------------------------- コードに関する質問なのですが・・ uが50000000*200の配列で、それぞれの要素に値が入っているとします。 これをそのまま1行目~50000000行目まで、順にグラフにプロットすると、かなりの時間がかかるので、 1行目から、一定数(例えば100)毎の行の配列を グラフにプロットさせたいのですが、やり方がわかりません・・ x = -10: 10: 200 ; t = 0: 100: 50000000 ; waterfall(x,t,u) ; とするとエラーが出ます。 どなたか訂正出来る方、お願いします。。 waterfall以外でも全然構いません。 -------------------------------------------------------------- 以上長々と質問すみませんでした。。 どなたかご指導頂けると助かります・・ あと、分類というのがよくわからなかったので、その他となっています・・ ごめんなさい。。

  • matlab matファイルから一部だけを読み込む

    Matlab初心者です、よろしくお願いします。 Matlabでn×m行列のデータが入っているmatファイルからx×y行列のデータを変数に読み込みたいのですが、どうすれば良いのでしょうか? ご教授していただけると助かります。 よろしくお願いします。

  • MATLABのCSV形式での書き込みについて

    MATLABにて計算させた結果をCSV形式で出力したいのですが, もともとCSVファイルに書き込んであるデータを消さずに, 追加書き込みとして,行と列を指定して書き込み出来るのでしょうか? もしできるのであれば, どのようなプログラムを組めばよいのでしょうか? どなたかご教授お願いします.

  • MATLABのCSV形式での書き込みについて

    MATLABにて計算させた結果をCSV形式で出力したいのですが, もともとCSVファイルに書き込んであるデータを消さずに, 追加書き込みとして,行と列を指定して書き込み出来るのでしょうか? もしできるのであれば, どのようなプログラムを組めばよいのでしょうか? どなたかご教授お願いします.

  • matlabでファイルをn行目から変数に読み込む方法

    matlabでファイルをn行目から読み込む方法がわかりません。 具体的にはファイルの上9行に説明文が入っていて、10行目からtab区切りでn×m行列のデータが入っているファイルがあって、その中のn×m行列のデータを変数に代入したいのですが、その方法がわかりません。 loadで読み込もうとしたのですが上手くできません。もし読み込む方法があるのなら誰か教えてください。

専門家に質問してみよう