質問編集履歴
3
算出結果は正しく得られたため、タイトルと質問の仕方を変更。
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
|
1
|
+
相関係数算出における、decimal型とdouble型。
|
body
CHANGED
@@ -1,20 +1,16 @@
|
|
1
1
|
少し前からこちらでお世話になっている初級者です。
|
2
2
|
ここのところVisual Studio 2010を使って相関係数算出のプログラムを作成しています(ASP.NET Webフォームアプリ)。
|
3
3
|
|
4
|
-
[単純な相関係数算出プログラム](https://teratail.com/questions/45914)
|
5
|
-
|
4
|
+
「SQLserver2012から取得した値を用いて相関係数を算出する」というプログラムについて、
|
5
|
+
SQLserverからデータを取得して配列に格納する関数ではDecimal型なのに対し、
|
6
|
+
メインの計算部分では変数宣言をdouble型で行なっているのは改善すべきでしょうか。
|
6
7
|
|
7
|
-
|
8
|
+
現在は計算結果も正しく算出されているのですが、デバッグの段階で
|
8
|
-
「SQLserver2012から取得した値を用いて相関係数を算出する」ということを実現したいと考えています。
|
9
9
|
|
10
|
-
その際、SQLserverからデータを取得して配列に格納する関数ではDecimal型なのに対し、
|
11
|
-
メインの計算部分では変数宣言をdouble型で行なっているのをどのように改善すべきでしょうか。
|
12
|
-
|
13
10
|
'相関係数算出 = 偏差積平均 / 値Aの標準偏差 * 取得した値の標準偏差
|
14
11
|
Dim Soukan_Keisu As Double = Dev_avg / (Self_std_dev * values_std_dev)
|
15
12
|
|
16
|
-
の部分で「0を分母に除算している」といったエラーが生じる
|
13
|
+
の部分で「0を分母に除算している」といったエラーが生じるケースもあったため、より適切なデータ型の指定やコードの記述に改善すべきかと不安になり、漠然ながら質問させていただきました。
|
17
|
-
|
18
14
|
具体性に欠けますが、ご指摘等いただければありがたいです。
|
19
15
|
|
20
16
|
よろしくお願いします。
|
2
Visual Stdioのバージョン修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
少し前からこちらでお世話になっている初級者です。
|
2
|
-
ここのところVisual Studio
|
2
|
+
ここのところVisual Studio 2010を使って相関係数算出のプログラムを作成しています(ASP.NET Webフォームアプリ)。
|
3
3
|
|
4
4
|
[単純な相関係数算出プログラム](https://teratail.com/questions/45914)
|
5
5
|
[SQLserver2012から取得した値を配列に格納し、関数の戻り値にする](https://teratail.com/questions/46270)
|
1
書式とタイトルの変更
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
|
1
|
+
decimal型とdouble型の違いで、相関係数算出でエラーが生じています。
|
body
CHANGED
@@ -1,6 +1,5 @@
|
|
1
1
|
少し前からこちらでお世話になっている初級者です。
|
2
2
|
ここのところVisual Studio 2013を使って相関係数算出のプログラムを作成しています(ASP.NET Webフォームアプリ)。
|
3
|
-
それにともなって、二つの質問をすでにさせていただきました。
|
4
3
|
|
5
4
|
[単純な相関係数算出プログラム](https://teratail.com/questions/45914)
|
6
5
|
[SQLserver2012から取得した値を配列に格納し、関数の戻り値にする](https://teratail.com/questions/46270)
|
@@ -8,24 +7,23 @@
|
|
8
7
|
問題解決にあたって単純化して考えていたのですが、このたびあわせて、
|
9
8
|
「SQLserver2012から取得した値を用いて相関係数を算出する」ということを実現したいと考えています。
|
10
9
|
|
11
|
-
※取得する先のテーブルは以下の構成です。
|
12
|
-
|
10
|
+
その際、SQLserverからデータを取得して配列に格納する関数ではDecimal型なのに対し、
|
13
|
-
|
11
|
+
メインの計算部分では変数宣言をdouble型で行なっているのをどのように改善すべきでしょうか。
|
14
12
|
|
15
|
-
とりあえず二つの質問それぞれでいただいた回答・ご指摘を反映させたものをつなぎあわせたのですが、
|
16
|
-
|
17
13
|
'相関係数算出 = 偏差積平均 / 値Aの標準偏差 * 取得した値の標準偏差
|
18
14
|
Dim Soukan_Keisu As Double = Dev_avg / (Self_std_dev * values_std_dev)
|
19
15
|
|
20
|
-
の部分で「0を分母に除算している」といったエラーが生じる
|
16
|
+
の部分で「0を分母に除算している」といったエラーが生じるのも、タイトルに記したようにそうしたデータ型の相違によるものかと考えたのですが・・・(考え違いでしょうか)。
|
21
17
|
|
22
|
-
SQLserverからデータを取得して配列に格納する関数ではDecimal型なのに対し、
|
23
|
-
メインの計算部分では変数宣言をdouble型で行なっていることなど、データ型に問題があるのかと考えましたが・・・。
|
24
|
-
|
25
18
|
具体性に欠けますが、ご指摘等いただければありがたいです。
|
26
19
|
|
27
20
|
よろしくお願いします。
|
28
21
|
|
22
|
+
|
23
|
+
※取得する先のテーブルは以下の構成です。
|
24
|
+
(取得したいのはvalueA から valueF、いずれもデータ型はdecimal(3,2)。格納するデータがいずれも小数点以下二桁の値ばかりなのでそのように設定したのですが・・・。)
|
25
|
+

|
26
|
+
|
29
27
|
<メイン部分>
|
30
28
|
```ここに言語を入力
|
31
29
|
Imports System.Data.SqlClient
|