LightGBM:ValueError: DataFrame.dtypes for data must be int, float or bool.

記事公開日:
最終更新日:

Sponsored Links

This post is also available in: 英語

LightGBMを利用している際のエラーです。
要するに LightGBM 側で pandas のオブジェクトには未だ対応していないので、ラベルエンコーダー(sklearn.preprocessing.LabelEncoder)とかを使って、int, float or bool に変換してくださいって事らしいです。
以下、簡単なサンプルコード書いてます。

ValueError: DataFrame.dtypes for data must be int, float or bool. Did not expect the data types in fields ...

# coding:utf-8
from sklearn import preprocessing
import numpy as np
import pandas as pd
data = ["ABC", "あああ", 1, 2, "いいい"]
df = pd.DataFrame(data)
lbl = preprocessing.LabelEncoder()
lbl.fit(df)
sample = lbl.transform(df)
print sample # This Outputs [2 3 0 1 4]

About
Amelt.net,LLCの創業者で、費用対効果の高い統合webマーケティングによりビジネスパートナーとして継続的にサポート。詳しいより。ブログの更新情報facebookページGoogle+そしてTwitter、またRSSfeedlyLINE@にてお知らせしていますのでフォローよろしくお願い致します。


Sponsored Links