質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

Q&A

0回答

800閲覧

C# for文中でのDatatime.Nowでの時間処理

退会済みユーザー

退会済みユーザー

総合スコア0

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

0グッド

0クリップ

投稿2021/10/22 10:24

プログラム初学者です。
visualstudio2019を用いてC#で機械学習のためのデータを取るプログラムを作っています。

C#

1string fileName; 2 for (int i = 0; i < 60; i++) 3 { 4 if (NativeThinkgear.TG_GetValueStatus(connectionID, NativeThinkgear.DataType.TG_DATA_ATTENTION) != 0) 5 { 6 if (i == 0) 7 { 8 SystemSounds.Beep.Play(); 9 fileName = fileNameFolder + "data0.txt"; 10 } 11 else if (i <= 21) 12 { 13 fileName = fileNameFolder + "data1to21.txt"; 14 } 15 else if (i == 22) 16 { 17 SystemSounds.Beep.Play(); 18 fileName = fileNameFolder + "data22.txt"; 19 } 20 else if (i <= 52) 21 { 22 fileName = fileNameFolder + "data23to43.txt"; 23 } 24 else if (i == 44) 25 { 26 SystemSounds.Beep.Play(); 27 fileName = fileNameFolder + "data44.txt"; 28 } 29 else 30 { 31 fileName = fileNameFolder + "data45to60.txt"; 32 } 33 34 35 36 37 using (StreamWriter filewrite000 = new StreamWriter(fileName, true)) 38 { 39 attention = NativeThinkgear.TG_GetValue(connectionID, NativeThinkgear.DataType.TG_DATA_ATTENTION); 40 meditation = NativeThinkgear.TG_GetValue(connectionID, NativeThinkgear.DataType.TG_DATA_MEDITATION); 41 delta = NativeThinkgear.TG_GetValue(connectionID, NativeThinkgear.DataType.TG_DATA_DELTA); 42 theta = NativeThinkgear.TG_GetValue(connectionID, NativeThinkgear.DataType.TG_DATA_THETA); 43 lowalpha = NativeThinkgear.TG_GetValue(connectionID, NativeThinkgear.DataType.TG_DATA_ALPHA1); 44 highalpha = NativeThinkgear.TG_GetValue(connectionID, NativeThinkgear.DataType.TG_DATA_ALPHA2); 45 lowbeta = NativeThinkgear.TG_GetValue(connectionID, NativeThinkgear.DataType.TG_DATA_BETA1); 46 highbeta = NativeThinkgear.TG_GetValue(connectionID, NativeThinkgear.DataType.TG_DATA_BETA2); 47 lowgamma = NativeThinkgear.TG_GetValue(connectionID, NativeThinkgear.DataType.TG_DATA_GAMMA1); 48 highgamma = NativeThinkgear.TG_GetValue(connectionID, NativeThinkgear.DataType.TG_DATA_GAMMA2); 49 DateTime dt = DateTime.Now; 50 51 filewrite000.Write(attention + ", " + meditation + ", " + delta + ", " + theta + ", " + lowalpha + ", " + highalpha + ", " + lowbeta + ", " + highbeta + ", " + lowgamma + ", " + highgamma + ", " + dt.ToString() + ", " + state+"\n"); 52 Console.WriteLine(" ATTENTION: MEDITATION: STATE: DELTA: THETA: LOWALPHA: HIGHALPHA: LOWBETA: HIGHBETA: LOWGAMMA: HIGHGAMMA: " + attention, +meditation, +state, +delta, +theta, +lowalpha, +highalpha, +lowbeta, +highbeta, +lowgamma, +highgamma, dt.ToString()); 53 } 54 } 55 56 if (NativeThinkgear.TG_GetValueStatus(connectionID, NativeThinkgear.DataType.TG_DATA_RAW) != 0) 57 { 58 if (NativeThinkgear.TG_GetValueStatus(connectionID, NativeThinkgear.DataType.MWM15_DATA_FILTER_TYPE) != 0) 59 { 60 Console.WriteLine(" Find Filter Type: " + NativeThinkgear.TG_GetValue(connectionID, NativeThinkgear.DataType.MWM15_DATA_FILTER_TYPE) + " index: " + packetsRead); 61 //break;//実装// 62 } 63 64 65 66 /* Get and print out the updated raw value */ 67 68 69 70 NativeThinkgear.TG_GetValue(connectionID, NativeThinkgear.DataType.TG_DATA_RAW); 71 72 73 74 packetsRead++; 75 76 77 78 if (packetsRead == 800 || packetsRead == 1600) // call twice interval than 1s (512) 79 { 80 errCode = NativeThinkgear.MWM15_getFilterType(connectionID); 81 Console.WriteLine(" MWM15_getFilterType called: " + errCode); 82 } 83 84 85 86 } 87 } 88

#やりたいこと
for分を回しiの値によってファイル名を変える。
一秒ごとに各種パラーメーターをtxtに出力する。

#問題点
現状データが取得出来てはいるが、データが一秒ごとに取得できず、秒数がとびとびになっている。
値を一秒ごとに取得する方法をご教授ください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

dodox86

2021/10/22 11:07

先にされているこういう質問の延長、発展だと思うのですが、解決されたのでしょうか。 [DateTime構造体を用いて任意の時間経過後にプログラムを動作するようにしたい] https://teratail.com/questions/364370 ※コメントや回答をいただいている状況で放置するようであれば、新しい質問に応えてもらえることも少なくなります。
退会済みユーザー

退会済みユーザー

2021/10/22 11:15

もらったレス・回答にフィードバックを返さない人は質問する資格がない
Zuishin

2021/10/22 11:39

詳細を聞かれてもろくな返事をせず、解決済みにした後に雑な返事をするから本当の解決ができない。 聞きたいことがあるなら、事情をしっかり説明するのが常識。
退会済みユーザー

退会済みユーザー

2021/10/22 11:40

どういった方向性で実装するかなど考えていて返信が遅くなったことは申し訳ないです。 今後は早急に返信していきます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問