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

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

新規登録して質問してみよう
ただいま回答率
85.50%
XGBoost

XGBoostは、アンサンブル学習と決定木を組み合わせた手法です。弱学習器の構築時に、以前構築された弱学習器の結果を用いて弱学習器を構築。高度な汎化能力を持ち、勾配ブースティングとも呼ばれています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

795閲覧

Modelをテストデータにあてはめるには

T_Y

総合スコア27

XGBoost

XGBoostは、アンサンブル学習と決定木を組み合わせた手法です。弱学習器の構築時に、以前構築された弱学習器の結果を用いて弱学習器を構築。高度な汎化能力を持ち、勾配ブースティングとも呼ばれています。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2023/03/21 13:08

編集2023/05/29 20:31

実現したいこと

XGBoostを使ってロジスティック回帰分析を行おうとしています。

学習用データ(train.csv)をtrain dataとtest dataに分けてロジスティック回帰分析を実行しました。

python

1pred = model.predict(dtest).round()

ここで得られたモデルをテストデータ(test.csv)に適用して、予測をすることが目的です。

発生している問題・エラーメッセージ

test.csvもtrain.csvでやったのと同じようなデータに整えてdf_testを作成しました。
モデルを当てはめるために次のコードを実行しました。

python

1pred = model.predict(df_test)

これを実行するとすると、TypeError: ('Expecting data to be a DMatrix object, got: ', <class 'pandas.core.frame.DataFrame'>) と出てきてしまいます。

試したこと

python

1pred = reg.predict(df_test)

などを試しましたが、エラーが出てしまいます。

XGBoostで回帰分析をやった時も学習用データでモデルを作って、今回と同じようにモデルをテストデータにあてはめて予測できたのですが、今回はどうしてうまく行かないのか原因がわかりません。お助け下さい。

実際のコード

csvを読み込んで、XGBoostでロジスティック回帰分析をして、モデルを得て、モデルをテストデータに適用するところまでのコードは次の通りです。

test.csvには目的変数となる'Outcome'は与えられていません。

python

1 2# Call main libraries 3import numpy as np 4import pandas as pd 5import matplotlib.pyplot as plt 6import seaborn as sns 7 8# Loading train data 9df_train = pd.read_csv('/***/train.csv') 10 11# Install XGBoost 12import xgboost as xgb 13 14# Install other libraries 15import tensorflow as tf 16from tensorflow.keras.models import Sequential 17from tensorflow.keras.layers import Activation, Dense, Dropout, Input, BatchNormalization 18from sklearn.model_selection import train_test_split 19from sklearn.metrics import mean_squared_error 20 21# データ分割 22# df_trainをtrainとtestに分ける 23# stratifyに設定したデータが均一になるように分割 24train, test = train_test_split(df_train, test_size = 0.1, stratify = df_train["target"]) 25 26# 説明変数、目的変数を格納 27X_train = train.drop(['id','target'], axis=1) 28y_train = train['target'] 29 30X_test = test.drop(['id','target'], axis=1) 31y_test = test['target'] 32 33print(X_train.shape, y_train.shape) 34print(X_test.shape, y_test.shape) 35 36# データ形式の変換 37dtrain = xgb.DMatrix(X_train, y_train) 38dtest = xgb.DMatrix(X_test, y_test) 39 40# パラメータ設定 41# binary: 二値分類 42params = { 43 "objective": "binary:logistic", 44 "eval_metric": "logloss", 45 } 46 47# 履歴保存用の変数 48history = {} 49 50# 学習 51model = xgb.train( 52 params = params, 53 dtrain = dtrain, 54 evals = [(dtrain, "train"), (dtest, "test")], 55 evals_result = history, 56 num_boost_round = 100, 57 early_stopping_rounds = 10, 58) 59 60plt.plot(history["train"]["logloss"],label = "train") 61plt.plot(history["test"]["logloss"],label = "test") 62plt.legend() 63plt.xlabel('rounds') 64plt.ylabel('logloss') 65plt.show() 66 67# XGBoostの評価 68pred = model.predict(dtest).round() 69print(pred) #[:5] 70print(y_test) #[:5] 71 72# 正答率 73from sklearn.metrics import accuracy_score 74print(accuracy_score(y_test, pred)) 75 76## テストデータで実行する 77 78# Loading test data 79df_test = pd.read_csv('/***/test.csv') 80 81# drop 'index' and save with another name 82df_test2 = df_test.drop('id', axis=1) 83 84# データ形式の変換して、確認 85df_test3 = xgb.DMatrix(df_test2) 86print(type(df_test3)) 87 88# train dataでの予測モデルをTest dataに適用する 89# 予測 90pred = model.predict(df_test3).round() 91 92# 予測結果をcsvに保存する 93 94sample = pd.read_csv('/****/sample_submission.csv', header=None) 95sample[1] = pred.astype('int') 96sample.to_csv('/***/sample_submission_20230428.csv',index=None, header=None) 97

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

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

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

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

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

jbpb0

2023/03/21 13:17

print(type(dtest)) と print(type(df_test)) の結果は同じでしょうか?
T_Y

2023/03/21 13:43

jbpb0さん、コメントありがとうございます。それぞれ実行すると <class 'xgboost.core.DMatrix'> <class 'pandas.core.frame.DataFrame'> という結果を得られます。同じではありませんでした。
jbpb0

2023/03/21 14:08

> 同じではありませんでした。 ということは、 > test.csvもtrain.csvでやったのと同じようなデータに整えてdf_testを作成しました。 が、できてないということです できてるなら、 print(type(df_test)) の結果も <class 'xgboost.core.DMatrix'> になるはずですよね
T_Y

2023/03/23 07:22

jbpd0さん、コメントありがとうございます。そのように考えるのですね。 <class 'xgboost.core.DMatrix'>を得るために次のコードを試してみました。 ```python dtest = xgb.DMatrix(df_test) print(type(df_test)) ``` ところが、結果は<class 'pandas.core.frame.DataFrame'>でした。xgb.DMatrixを実行すれば良いという話ではないのでしょうか。
jbpb0

2023/03/23 07:45

「print(type(dtest))」の結果が「<class 'xgboost.core.DMatrix'>」なのだから、「dtest」を作った時と同じことをやればいいだけなのですが コードのそこの部分が質問に書かれてないので、どうやったのか分かりませんが、そのコードは質問者さんが書いたのですよね?
jbpb0

2023/03/23 07:50

> dtest = xgb.DMatrix(df_test) csvファイルからどのようにデータを加工したのかが質問に書かれてないので、質問を見て 「train.csv」から作ったのが「dtest」 「test.csv」から作ったのが「df_test」 だと思ってたのですが、違うのでしょうか?
T_Y

2023/03/24 07:29

jbpd0さん、コメントありがとうございます。 dtestはtrain.csvから作成しました df_testはtest.csvから作成しました。 長くなってしまいますが、csvを読み込んだ後に行ったデータ加工やXGBoostのコードは次の通りです。 train dataで得られたpredをtest data(df_test)にあてはめようとしてエラーが起きています。 ```python # Loading train data df_train = pd.read_csv('/content/drive/MyDrive/SIGNATE/32_Diabetes/train.csv') # Install XGBoost import xgboost as xgb # Install other libraries import tensorflow as tf from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Activation, Dense, Dropout, Input, BatchNormalization from sklearn.model_selection import train_test_split from sklearn.metrics import mean_squared_error # データ分割 # df_trainをtrainとtestに分ける # stratifyに設定したデータが均一になるように分割 train, test = train_test_split(df_train, test_size = 0.1, stratify = df_train["Outcome"]) # 説明変数、目的変数を格納 X_train = train.drop(['index','Outcome'], axis=1) y_train = train['Outcome'] X_test = test.drop(['index','Outcome'], axis=1) y_test = test['Outcome'] print(X_train.shape, y_train.shape) print(X_test.shape, y_test.shape) # データ形式の変換 dtrain = xgb.DMatrix(X_train, y_train) dtest = xgb.DMatrix(X_test, y_test) # パラメータ設定 # binary: 二値分類 params = { "objective": "binary:logistic", "eval_metric": "logloss", } # 履歴保存用の変数 history = {} # 学習 model = xgb.train( params = params, dtrain = dtrain, evals = [(dtrain, "train"), (dtest, "test")], evals_result = history, num_boost_round = 100, early_stopping_rounds = 10, ) plt.plot(history["train"]["logloss"],label = "train") plt.plot(history["test"]["logloss"],label = "test") plt.legend() plt.xlabel('rounds') plt.ylabel('logloss') plt.show() # XGBoostの評価 pred = model.predict(dtest).round() print(pred[:5]) print(y_test[:5]) # 正答率 from sklearn.metrics import accuracy_score print(accuracy_score(y_test, pred)) #Test Dataにモデルをあてはめる # Loading test data df_test = pd.read_csv('/content/drive/MyDrive/SIGNATE/32_Diabetes/test.csv') # ダミー変数処理(文字列→数値) # 文字列型データを数値型データ(0,1)にする df_test = pd.get_dummies(df_test) # drop 'index' df_test.drop('index', axis=1) # テストデータに対し予測値の算出 # pred_test = pred.predict(df_test) pred = model.predict(df_test) ```
jbpb0

2023/03/24 13:41 編集

> dtestはtrain.csvから作成しました df_testはtest.csvから作成しました。 やはりそうですか > dtest = xgb.DMatrix(df_test) 「train.csv」から作成していた「dtest」を、「test.csv」から作成した「df_test」を処理したもので上書きしてもいいのでしょうか? 上書きしてもかまわないのなら、 > dtest = xgb.DMatrix(df_test) の次に、 > print(type(df_test)) ではなく、 print(type(dtest)) を実行してみてください
T_Y

2023/03/24 14:07

jbpb0さん、どうもありがとうございます。 ```python df_test = xgb.DMatrix(df_test) print(type(df_test)) ``` を実行して<class 'xgboost.core.DMatrix'>を得ることができました。 ただ、 ```python # train dataでの予測モデルをTest dataに適用する # 予測 pred = model.predict(df_test) ``` を実行すると、エラーになってしまい、'ValueError: feature_names mismatch: ['Pregnancies', 'Glucose', 'BloodPressure', 'SkinThickness', 'Insulin', 'BMI', 'DiabetesPedigreeFunction', 'Age'] ['index', 'Pregnancies', 'Glucose', 'BloodPressure', 'SkinThickness', 'Insulin', 'BMI', 'DiabetesPedigreeFunction', 'Age'] training data did not have the following fields: index'と出てしまいます。 お付き合い下さり感謝しております。modelをテストデータにあてはめるところをご教示いただけますと嬉しいです。
jbpb0

2023/03/26 04:08 編集

> 'ValueError: feature_names mismatch: ['Pregnancies', 'Glucose', 'BloodPressure', 'SkinThickness', 'Insulin', 'BMI', 'DiabetesPedigreeFunction', 'Age'] ['index', 'Pregnancies', 'Glucose', 'BloodPressure', 'SkinThickness', 'Insulin', 'BMI', 'DiabetesPedigreeFunction', 'Age'] training data did not have the following fields: index' 「training data」には「index」が無かったのに、「df_test」には「index」があるので、「feature_names mismatch」が起きてます > df_test = xgb.DMatrix(df_test) のすぐ上に print(X_train.info()) print(df_test.info()) を追加して実行した結果表示を見て、両者の列名を比較してみてください
T_Y

2023/03/27 13:59 編集

jppb0さんさん、コメントありがとうございます。 df_testの'index'を落として、<class 'xgboost.core.DMatrix'>にするために次のコードを実行しました。 ```python # drop 'index' and save with another name df_test2 = df_test.drop('index', axis=1) df_test2 = xgb.DMatrix(df_test2) print(type(df_test2)) ``` エラーが出てしまい、`TypeError: Not supported type for data.<class 'xgboost.core.DMatrix'>`となり、DMatrixを得られなくなってしまいました。 テストデータの加工の仕方が悪いのだと思いますが、基本的には試験データでやったプロセスを踏んでいるはずなのですが、どうしたものでしょうか・・・。
jbpb0

2023/03/27 14:14

コードを断片的に書かれても分かりません csvを読み込んでるところからの全部の現状のコードを、質問に追記してください (ここに書くのではなく、質問を編集して追記する)
T_Y

2023/03/28 03:45

jbpb0さん、コメントありがとうございました。全てのコードを質問に追記しました。 一つ一つ実行しながら、進めていった所、testデータでダミーデータを作ってしまっていて、trainデータとマッチしなかったことが理由だったことがわかりました。質問に追記したコードではエラー無く実行することができました。 もし差し支えなければ、誤ったコードがあればご指摘いただけますと嬉しいです。
T_Y

2023/03/28 03:58

ロジスティック回帰なので、結果が0 (zero)か1にならないといけないのですが、0.764というような結果も出てしまいました。どこかに不十分なコードがあるようなので調べてみます。
jbpb0

2023/03/29 09:07

> 質問に追記したコードではエラー無く実行することができました。 pred = model.predict(df_test2) ↓ 修正 df_test3 = xgb.DMatrix(df_test2) pred = model.predict(df_test3) としないと、 TypeError: ('Expecting data to be a DMatrix object, got: ', <class 'pandas.core.frame.DataFrame'>) となりませんか?
jbpb0

2023/03/29 09:25 編集

> ロジスティック回帰なので、結果が0 (zero)か1にならないといけないのですが、0.764というような結果も出てしまいました。 pred = model.predict(dtest).round() ↓ 変更 pred = model.predict(dtest) として実行してみてください その次の行の「print(pred[:5])」の実行結果は0, 1だけでしょうか? また、 https://udemy.benesse.co.jp/data-science/data-analysis/logistic-regression-analysis.html の、下記の数値を比較してみてください ・「ロジスティック回帰分析とは?いつ使うの?」の「ロジスティック回帰分析の活用例は?」の表の「がん有無」 ・「ロジスティック回帰分析の実際の計算方法は?」の「ロジスティック回帰分析の見方」の表の「判別スコア」
T_Y

2023/03/30 07:41

jdpd0さん、コメントありがとうございます。 ```python pred = model.predict(dtest) #round()を取りました print(pred[:5]) print(y_test[:5]) ``` で実行すると、次のような出力になりました。 ---------------------------------------------- [0.15325515 0.5389738 0.01549561 0.66281676 0.07651941] 1675 0 1175 0 1526 0 738 1 1894 0 Name: Outcome, dtype: int64 ---------------------------------------------- しかし、これで正答率を出すために次のコードを実行するとエラー(ValueError: Classification metrics can't handle a mix of binary and continuous targets)になってしまいます。 ```python # 正答率 from sklearn.metrics import accuracy_score print(accuracy_score(y_test, pred)) ``` やはり、.round()は必要なのでしょうか。
jbpb0

2023/03/30 11:05

> pred = model.predict(dtest) として実行してみてください その次の行の「print(pred[:5])」の実行結果は0, 1だけでしょうか? と書いたのは、「pred = model.predict(df_test2)」の結果が0, 1だけにならないのを疑問に思ってるようなので、そもそも0, 1だけにならないものであることを確認してもらうためです 正答率を出すために0, 1にしたいなら、「.round()」を付けたらいいですよ 逆に何で、「pred = model.predict(dtest).round()」には「.round()」を付けてるのに、「pred = model.predict(df_test2)」には「.round()」を付けないのでしょうか? 「.round()」を付けなければ、 > 0.764というような結果も出てしまいました。 となるのは当然です
T_Y

2023/03/31 03:19

jbpb0さん、コメントありがとうございます。 >>「pred = model.predict(dtest).round()」には「.round()」を付けてるのに、 >>「pred = model.predict(df_test2)」には「.round()」を付けないのでしょうか? 仰る通りですね。.round()を付けたら、0と1の2値で返ってきました。
T_Y

2023/04/17 07:10

csvデータの見た目は1と0なのですが、csvファイルを右クリックして「編集」で開いてみたら、1.0と0.0という小数点付のでーたになっていました。これを整数にするコードはあるのでしょうか。それともcsvファイルを開いて「置き換え」で対応するしかないのでしょうか。
jbpb0

2023/04/17 10:25 編集

> csvファイルを右クリックして「編集」で開いて の時に使ってるアプリは何でしょうか? テキストエディタでしょうか? もし違うなら、テキストエディタでもcsvファイルを読み込んで、確認してみてください > 1.0と0.0という小数点付のでーたになっていました。 そのcsvファイルが「train.csv」や「test.csv」のことなら、 df_train = pd.read_csv('/*****/train.csv') print(df_train.info()) のようにして、pythonでcsvファイルを読み込んだ後に、データの型を確認してみてください csvファイルの各列の型が「Dtype」欄に表示されます それとも、コードを実行したら作成される「sample_submit_20230328.csv」とかのことでしょうか?
T_Y

2023/04/17 11:13

jbpb0さん、いつもありがとうございます。 dtypeで調べたところfloat32と返ってきました。
jbpb0

2023/04/17 14:05

> dtypeで調べたところfloat32 csvファイルを読み込む時か、読み込んだ後か、どちらかで整数の型に変換できます https://note.nkmk.me/python-pandas-dtype-astype/ の下記を見てください ・「astype()によるデータ型dtypeの変換(キャスト)」の「pandas.DataFrameの任意の列のデータ型dtypeを個別に変更」 ・「CSVファイル読み込み時のデータ型dtype指定」の「列ごとにデータ型dtypeを指定」 なお、上記webページの「pandasの主要なデータ型dtype一覧」に書かれてるように、整数の型は複数ありますが、値が0, 1しかないなら、どの整数型に変換しても大丈夫だと思います
T_Y

2023/04/19 03:50 編集

jbpd0さん、コメントありがとうございます。 pred.dtype=int を実行しました。 このpredをcsvに書き出そうと sample = pd.read_csv('/****/sample_submit.csv', header=None) sample[1] = pred sample.to_csv('/****/sample_submit_20230328.csv',index=None, header=None) を実行したら、ValueError: Length of values (500) does not match length of index (1000)となってしまいました。
jbpb0

2023/04/24 10:39 編集

現在実行してるコードの確認です 以前のコメントにも書きましたが、「train.csv」と「test.csv」を適当な内容ででっち上げて、質問の現状のコードを実行したら、 pred = model.predict(df_test2) で TypeError: ('Expecting data to be a DMatrix object, got: ', <class 'pandas.core.frame.DataFrame'>) というエラーが出るので、 pred = model.predict(df_test2) ↓ 修正 df_test3 = xgb.DMatrix(df_test2) pred = model.predict(df_test3) のようにしないといけないはずです 質問のコードを、質問者さんが実際に実行してる(エラーが出ない)コードに修正してください なお、最近変更した、下記はそこに反映させなくていいです > pred.dtype=int を実行しました。 【追記】 > ValueError: Length of values (500) does not match length of index (1000)となってしまいました。 となる理由を、現状のコードをベースに説明するため、現状のコードがどうなってるのかを知る必要があります 質問のコードが修正されたら、上記エラーの理由を説明できます
T_Y

2023/05/02 13:01

jbpb0さん、返信が遅れまして失礼しました。 df_test3 = xgb.DMatrix(df_test2) pred = model.predict(df_test3) を実行しました。 今度は0,1ではなく、小数点0.598というような形で返ってきました。
jbpb0

2023/05/08 02:37 編集

ここに書くのではなく、質問のコードを編集して、質問者さんが実際に実行してるコードに修正してください また、以前のコメントに > 仰る通りですね。.round()を付けたら、0と1の2値で返ってきました。 と書いてるのだから、4/17時点で質問者さんが実行してたコードは > df_test3 = xgb.DMatrix(df_test2) pred = model.predict(df_test3) を実行しました。 ではなかったはずです たとえば、 df_test3 = xgb.DMatrix(df_test2) pred = model.predict(df_test3).round() みたいなのを実行してたはず
T_Y

2023/05/08 12:51

jbpb0さん、間が空いてしまいまして、失礼しました。 「実際のコード」に現在のコードを反映させています。実行すると、やはり0.0と1.0になってしまいます。
jbpb0

2023/05/08 14:08

> 「実際のコード」に現在のコードを反映させています。 を実行した場合は、 > ValueError: Length of values (500) does not match length of index (1000)となってしまいました。 のエラーは出ないのでしょうか? > 実行すると、やはり0.0と1.0になってしまいます。 sample[1] = pred ↓ 変更 sample[1] = pred.astype("int") で、どうでしょうか?
T_Y

2023/05/10 12:42

jbpd0さん、コメントありがとうございます。 astype('int')で一桁にすることができました。しかし、全てゼロで返ってきてしまいました。0.4もゼロ、0.5もゼロになってしまいます。四捨五入してastype('int')を実行するコードはあるのでしょうか。
jbpb0

2023/05/11 01:23 編集

> 四捨五入してastype('int')を実行するコードはあるのでしょうか。 pred = model.predict(df_test3).round() の「.round()」で四捨五入されて、「pred」には「0.0」と「1.0」のどちらかしか入ってないはずで、 sample[1] = pred.astype("int") の「.astype("int")」では、 0.0→0 1.0→1 となってるはずです > 全てゼロで返ってきてしまいました。 pred = model.predict(df_test3).round() はそのままで、 sample[1] = pred.astype("int") ↓ 変更 sample[1] = pred としたら、どうなるのでしょうか? 全て「0.0」だけになるのでしょうか? それとも、「1.0」も有るのでしょうか? 【追記】 「.round()」に付いては、これも見てください https://www.timedia.co.jp/tech/pythonround/ 【追記2】 sample[1] = pred では > 実行すると、やはり0.0と1.0になってしまいます。 と「1.0」も有ったのに、 sample[1] = pred.astype("int") では > 全てゼロで返ってきてしまいました。 と「1」は全く無くなった、ので間違いないでしょうか? コードの「sample[1] =...」以外の行は変えてないのに、そうなったのでしょうか?
T_Y

2023/05/12 04:09

jbpd0さん、コメントありがとうございます。 質問文のコードで90行目と95行目のようにして実行しました。 次のようなエラーになってしまいました。 ValueError: Length of values (500) does not match length of index (1000)
jbpb0

2023/05/12 07:00 編集

状況がよく分かりません 現在質問に書かれてるコードだと、 > 質問文のコードで90行目と95行目のようにして実行しました。 > 次のようなエラーになってしまいました。 > ValueError: Length of values (500) does not match length of index (1000) となるのですね では、 > astype('int')で一桁にすることができました。しかし、全てゼロで返ってきてしまいました。 の時のコードは、どうだったのでしょうか? 質問を編集して、その時のコードを追記してください 現在質問に書かれてるコードはそのまま残して、それとは別に追記してください もし、文字数制限でコードを全部書けない場合は、現在質問に書かれてるコードとの相違点を書いてください (ここに書くのではなく、質問を編集して追記してください)
T_Y

2023/05/15 12:44

jbpb0さん、直近のコードを質問に貼り付けました。 そして95行目のコードを sample[1] = pred.astype('int') にしました。astype('int')を付けたおかげで、csvのデータも整数で0と1で構成されていました。 どうもありがとうございました。
jbpb0

2023/05/21 10:24

> 質問文のコードで90行目と95行目のようにして実行しました。 > 次のようなエラーになってしまいました。 > ValueError: Length of values (500) does not match length of index (1000) の時と、 > astype('int')で一桁にすることができました。しかし、全てゼロで返ってきてしまいました。 の時と、 > 95行目のコードを sample[1] = pred.astype('int') にしました。astype('int')を付けたおかげで、csvのデータも整数で0と1で構成されていました。 の時で、何が違ったのかが、質問者さんのコメントや、質問の編集履歴を見直しても、結局よく分かりませんが、やりたいことは全部できたのでしょうか?
T_Y

2023/05/22 12:07

jbpb0さん、ご返信ありがとうございます。 お陰様で望んでいるフォーマットでデータを作成できました。多くのアドバイスを下さいまして、ありがとうございました。
guest

回答1

0

自己解決

python

1sample[1] = pred.astype('int')

今回は整数で出力したかったので、.astype('int')が必要でした。

この答えに辿り着くまで、jbpb0さんには多くのコメントをいただきました。感謝いたします。

投稿2023/05/29 11:31

T_Y

総合スコア27

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問