teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

4

データの追加

2019/12/26 04:10

投稿

Fnaniel
Fnaniel

スコア5

title CHANGED
File without changes
body CHANGED
@@ -10,21 +10,64 @@
10
10
 
11
11
  上記サイトに似たような条件のロジスティック回帰の例が記載されていますが,このような方法が妥当なのでしょうか...
12
12
 
13
+ A B C D E F Name
14
+ 50000 120 0,0,1,0,0 0,0,1 0,1,0,0 0,0,0,1 1
15
+ 35000 80 0,0,1,0,0 0,0,1 0,1,0,0 0,1,0,0 0
16
+ 20000 50 1,0,0,0,0 0,1,0 0,0,1,0 0,0,0,1 1
17
+ 42000 65 0,0,0,0,1 0,0,1 1,0,0,0 0,0,0,1 1
18
+ 51000 110 0,0,0,1,0 1,0,0 0,1,0,0 0,0,0,1 0
19
+ 23000 55 1,0,0,0,0 1,0,0 0,0,0,1 1,0,0,0 1
20
+ 38000 85 0,0,0,1,0 1,0,0 0,0,0,1 0,0,0,1 0
21
+ 46000 95 1,0,0,0,0 0,1,0 0,0,1,0 0,1,0,0 0
22
+ 4000 90 1,0,0,0,0 0,0,1 1,0,0,0 0,0,0,1 1
23
+ 19000 45 0,0,0,1,0 0,0,1 0,0,1,0 0,0,0,1 0
13
24
 
25
+ これをコピーしてExcelの「A1~G11」にテキスト形式で張り付けたものと実データは全く一緒です.
14
26
 
27
+ このデータは10行のテストデータですが,
28
+ 最終的には2000行あるデータで二値分類を行いたいと考えています.
29
+
30
+
31
+
15
32
  ### 発生している問題・エラーメッセージ
16
33
 
17
- ```
18
- NameError Traceback (most recent call last)
34
+ ValueError Traceback (most recent call last)
19
- <ipython-input-1-587453287380> in <module>
35
+ <ipython-input-11-bdb8fb2b37d7> in <module>
20
36
  1 from sklearn.tree import DecisionTreeClassifier
21
- 2 model = DecisionTreeClassifier(max_depth=5, random_state=0)
37
+ 2 model = DecisionTreeClassifier(max_depth=3, random_state=0)
22
38
  ----> 3 model.fit(X, Y)
23
39
  4 model.predict(X)
24
40
 
41
+ ~\Anaconda3\lib\site-packages\sklearn\tree\tree.py in fit(self, X, y, sample_weight, check_input, X_idx_sorted)
42
+ 799 sample_weight=sample_weight,
43
+ 800 check_input=check_input,
25
- NameError: name 'X' is not defined
44
+ --> 801 X_idx_sorted=X_idx_sorted)
45
+ 802 return self
26
- ```
46
+ 803
27
47
 
48
+ ~\Anaconda3\lib\site-packages\sklearn\tree\tree.py in fit(self, X, y, sample_weight, check_input, X_idx_sorted)
49
+ 114 random_state = check_random_state(self.random_state)
50
+ 115 if check_input:
51
+ --> 116 X = check_array(X, dtype=DTYPE, accept_sparse="csc")
52
+ 117 y = check_array(y, ensure_2d=False, dtype=None)
53
+ 118 if issparse(X):
54
+
55
+ ~\Anaconda3\lib\site-packages\sklearn\utils\validation.py in check_array(array, accept_sparse, accept_large_sparse, dtype, order, copy, force_all_finite, ensure_2d, allow_nd, ensure_min_samples, ensure_min_features, warn_on_dtype, estimator)
56
+ 525 try:
57
+ 526 warnings.simplefilter('error', ComplexWarning)
58
+ --> 527 array = np.asarray(array, dtype=dtype, order=order)
59
+ 528 except ComplexWarning:
60
+ 529 raise ValueError("Complex data not supported\n"
61
+
62
+ ~\Anaconda3\lib\site-packages\numpy\core\numeric.py in asarray(a, dtype, order)
63
+ 536
64
+ 537 """
65
+ --> 538 return array(a, dtype, copy=False, order=order)
66
+ 539
67
+ 540
68
+
69
+ ValueError: could not convert string to float: '0,0,1,0,0'
70
+
28
71
  ### 該当のソースコード
29
72
 
30
73
  ```Python
@@ -46,6 +89,8 @@
46
89
 
47
90
  ```
48
91
 
92
+ from sklern~ 以下よりエラーが生じます.
93
+
49
94
  ### 試したこと
50
95
 
51
96
  https://news.mynavi.jp/article/Python_ML-5/

3

エクセルファイルの追加

2019/12/26 04:10

投稿

Fnaniel
Fnaniel

スコア5

title CHANGED
File without changes
body CHANGED
@@ -10,6 +10,8 @@
10
10
 
11
11
  上記サイトに似たような条件のロジスティック回帰の例が記載されていますが,このような方法が妥当なのでしょうか...
12
12
 
13
+
14
+
13
15
  ### 発生している問題・エラーメッセージ
14
16
 
15
17
  ```

2

ソースコードの追記,説明.エラーメッセージの記載.

2019/12/26 03:01

投稿

Fnaniel
Fnaniel

スコア5

title CHANGED
File without changes
body CHANGED
@@ -13,26 +13,42 @@
13
13
  ### 発生している問題・エラーメッセージ
14
14
 
15
15
  ```
16
+ NameError Traceback (most recent call last)
17
+ <ipython-input-1-587453287380> in <module>
18
+ 1 from sklearn.tree import DecisionTreeClassifier
19
+ 2 model = DecisionTreeClassifier(max_depth=5, random_state=0)
20
+ ----> 3 model.fit(X, Y)
16
- エラーメッセージ
21
+ 4 model.predict(X)
22
+
23
+ NameError: name 'X' is not defined
17
24
  ```
18
25
 
19
26
  ### 該当のソースコード
20
27
 
28
+ ```Python
21
29
  import pandas as pd
22
30
 
23
- df = pd.read_excel(r'C:~~~~.xlsx')
31
+ df = pd.read_excel(r'C:\Users\AAA.xlsx') #エクセルファイルの読み込み
32
+ df #エクセルファイルの表示
24
33
 
25
- df
34
+ df['Name'].value_counts() #「Name」列の「1」,「0」の各個数表示
26
35
 
27
- df['Name'].value_counts()
28
-
29
- X = df.drop('Name', axis=1)
36
+ X = df.drop('Name', axis=1) #「Name」列以外の列を説明変数Xに設定
30
- Y = df['Name']
37
+ Y = df['Name']    #「Name」列を目的変数Yに設定
31
38
  X.head()
32
39
 
40
+ from sklearn.tree import DecisionTreeClassifier #機械学習ライブラリscikit-learnの中からDecisionTreeClassifier(決定木)を呼び出す
41
+ model = DecisionTreeClassifier(max_depth=3, random_state=0) #modelという名前で決定木を使う宣言(モデルの条件として、max_depth、random_state)
42
+ model.fit(X, Y) #教師データを先ほど宣言したモデルに代入して学習を実行し、機械学習モデルの作成
43
+ model.predict(X)
44
+
45
+ ```
46
+
33
47
  ### 試したこと
34
48
 
49
+ https://news.mynavi.jp/article/Python_ML-5/
35
- ここ問題に対したことを記載しさい。
50
+ 上記のサイト沿っ動かしてみたけです.
51
+ 説明変数が数値じゃないのでエラーが出たんだと思います.
36
52
 
37
53
  ### 補足情報(FW/ツールのバージョンなど)
38
54
 

1

該当のソースコードの箇所に現在のプログラムを記載しました.

2019/12/26 01:58

投稿

Fnaniel
Fnaniel

スコア5

title CHANGED
File without changes
body CHANGED
@@ -18,10 +18,18 @@
18
18
 
19
19
  ### 該当のソースコード
20
20
 
21
- ```ここに言語名を入力
21
+ import pandas as pd
22
- ソースコード
23
- ```
24
22
 
23
+ df = pd.read_excel(r'C:~~~~.xlsx')
24
+
25
+ df
26
+
27
+ df['Name'].value_counts()
28
+
29
+ X = df.drop('Name', axis=1)
30
+ Y = df['Name']
31
+ X.head()
32
+
25
33
  ### 試したこと
26
34
 
27
35
  ここに問題に対して試したことを記載してください。