プログラミングを始めたばかりです。
Cygwin環境でPerlを行っています。計算プログラムをPerlで書いています。
下に示すように、計算プログラムの中にデータを記入し、そのデータを処理することは出来たのですが、外部のファイルを読みそのデータを処理する方法が分かりません。
# y = ax + bを求める
@x=(1,2,3);
@y=(1,4,9);
for(<stdin>){
for($i=0;$i<$n;$i++){
$A = $A + ($y[$i] * $y[$i]);
$B = $B + ($x[$i] * $x[$i]);
・
・
・
$a=・・・
$b=・・・
print("a=$a,b=$b");
open (IN, $file) or die "$!"でcsvファイルに記載されてある数値をCygwin上で実行することは出来ました。
作成したプログラムとcsvファイルをCygwinで入力して、入力したcsvファイルのデータを処理(直線近似して傾きを求めたりなど)したいのですが、どうすればよいのでしょうか。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
自分はPerlを書かないので直接の回答ではないです(なんとなく、コードの意味はわかりますが)。
まず「Perlでのファイル処理方法について 」では、カテ違いと思われて、回答が付きにくいです。表題を変えて、再質問する事をお奨めします。
次にPerlを自由自在に読める人も、少なくともここには余りいないと思います。(数学的)状況を整理し、ふつうの言葉で質問する事もあ奨めします。
あるいはPerlには、「直線近似ライブラリ」などがあるのかも知れませんね。そうであってもなくても最初に、メニューの、
[カテゴリ]⇒[[技術者向け]コンピューター]⇒[プログラミング]⇒[Perl]
の板に同じ質問を投げてみるのは、悪くないと思います。Perlを自由自在に読める人がいる訳ですから(^^)。
No.2
- 回答日時:
> 作成したプログラムとcsvファイルをCygwinで入力して、入力したcsvファイルのデータを処理(直線近似して傾きを求めたりなど)したい
というのが、どんな流れで何をしたいのか、今一つはっきりしません。
もうすこし内容を整理してください。
・「Cygwinで入力」ってどんな入力のことを言ってるのですか?
・ 「for(<stdin>){」ってありますが、このループはどこまでの繰り返しなんですか?
・「open (IN, $file) or die "$!"でcsvファイルに記載されてある数値をCygwin上で実行することは出来ました」
の「Cygwin上で実行」ってなんですか?openはただファイルを読み書きできるようにするだけです。
・数値が読み込めたのなら、「@x=(1,2,3);@y=(1,4,9);」と同様の状態になるように、リスト@x,@yに値を追加するだけではないでしょうか?
回答ありがとうございます。説明がごちゃごちゃでわかりにくかったです。
for(<stdin>){ の部分の記述は誤りでした。
質問内容に記述したパールファイル(.pl)内に
@x=(1,2,3);
@y=(1,4,9);
のように記載すると、データが変わるたびにファイル内の数値を入れ替えないといけないと思うのですが、cygwinのウィンドウに、
$ ./lesson.pl 10 <data1.csv
のように入力しEnterすると、ファイル内の数値を入れ替えないで指定したファイル(ここではdata1.csv)のデータが処理されると思うのですが、その場合パールファイルをどのように記述すればよいのでしょうか。という質問でした。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) データ解析ソフトRでのファイル入力read.csvがエラーになります 7 2022/03/27 22:11
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
- Visual Basic(VBA) ファイル全てを .xlsm に変更したところ、プログラムが途中で落ちてしまっています 17 2022/12/07 12:03
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- その他(プログラミング・Web制作) python 気象データの取得 2 2023/06/20 23:54
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
- その他(プログラミング・Web制作) pythonでクラスで複数のメソッドを利用する方法 2 2022/04/15 04:17
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- その他(プログラミング・Web制作) Fortranでの出力ファイル 2 2023/03/21 21:25
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JavaでCSVファイルを高速に読む...
-
VBAでCSVファイルの特定行を書...
-
形態素解析の解析内容を各品詞...
-
CSVが可変長の場合の検索方法
-
vNoteのBODY部の取得(長めです)
-
openした後、closeしないでプロ...
-
VBAでCSVファイルを途中行まで...
-
VB6.0でDB接続する際に切断時の...
-
プログラミング(流れ図とコー...
-
拡張子 ”log” と ” dat” の違い
-
VBAコードを張り付け後のエクセ...
-
バッチファイルの作り方(CSV→...
-
batファイルでrenameができませ...
-
close()で例外が投げられる理由
-
vba dir の相対パス
-
MATLABのm-fileについて
-
文字列をカウントする方法
-
至急お願いします。C言語で.img...
-
一定時間が経過したフォルダの削除
-
画像アップロード機能を追加し...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでCSVファイルの特定行を書...
-
ExcelをCSV書き出す場合のシー...
-
openした後、closeしないでプロ...
-
VBAでCSVファイルを途中行まで...
-
VBAで巨大なファイルの途中から...
-
ReadLineでの読み出し行を指定する
-
JavaでCSVファイルを高速に読む...
-
MATLAB グローバル変数の宣言
-
エクセルVBA コードが同じでも...
-
Perlの変数に文字数制限(容量...
-
perlで、後ろの行を読んで、前...
-
C言語でのファイルのデータ更...
-
2つのCSVファイルをマッチング
-
VB6.0でDB接続する際に切断時の...
-
CSVが可変長の場合の検索方法
-
perlで容量の大きいCSVファイル...
-
1ファイルずつ読み込みたい
-
VBScriptでファイル保存先のデ...
-
perl で googleAPIを呼び出す...
-
C#でCSVファイルを逐一更新したい
おすすめ情報