如何使用 JMP18 Python 脚本执行机器学习建模?你好,
我正在使用 JMP Python 脚本(JMP18)创建 LightGBM 模型。
我当前的设置如下:
- X 变量:“train1.csv”文件,D1 至 D1776 列
- Y 变量:“y1.csv”文件,“活动”列
- 预测目标“活动”:“test1.csv”文件,D1至D1776列
- 注意:原始文件“train_original.csv”文件,列活动到 D1776。来自 Kaggle.com( 预测生物反应)
如果有人能针对以下问题提供指导,我将不胜感激:
- 无法在 JMP18 Python 环境中执行 LightGBM 建模
我在下面附上了我的 JMP Python 脚本供您参考。详情请参阅以下内容。
提前感谢您的时间!:)
import jmp
import jmputils
# update to latest version of pip (Package Installer of python) and setuptools then install numpy & pandas
jmputils.jpip('install --upgrade', 'pip setuptools')
jmputils.jpip('install', 'pandas numpy scikit-learn keras lightgbm')
# Import package
import numpy as np # linear algebra
import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)
# Load data
train1 = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/train1.csv')
y1 = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/y1.csv')
test1 = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/test1.csv')
train1.head() # No Result in JMP, but it's okay. It's fine to open the datatable using 'jmp.open'
y1.head() # No Result in JMP, but it's okay. It's fine to open the datatable using 'jmp.open'
# train1 = jmp.open('D:/steve.kim/Kaggle/BI Biological Response/train1.csv')
# y1 = jmp.open('D:/steve.kim/Kaggle/BI Biological Response/y1.csv')
# 01 Modeling training - Library import
from lightgbm import LGBMClassifier
# 02 Modeling training - LGBM Baseline model without hyperparameter tuning
lgb = LGBMClassifier()
# 03 Modeling training - define X (factors) and Y (responses) variables
lgb.fit(train1, y1) # lightgbm.basic.LightGBMError: Length of labels differs from the length of #data
# 04 Predict
predslgb = lgb.predict_proba(test1)
预测模型和机器学习回复:如何使用 JMP18 Python 脚本执行机器学习建模?
抱歉,这个问题!
python pandas 和 lightGBM 在 JMP18 python 脚本中运行良好!: )
import jmp
import jmputils
# update to latest version of pip (Package Installer of python) and setuptools then install numpy & pandas
jmputils.jpip('install --upgrade', 'pip setuptools')
jmputils.jpip('install', 'pandas numpy scikit-learn keras lightgbm')
# Checking package version
jmputils.jpip('list')
# Import package
import numpy as np # linear algebra
import pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)
# Any results you write to the current directory are saved as output.
import os
print (os.listdir("D:/steve.kim/Kaggle/BI Biological Response"))
# Load data
train_x = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/train_x.csv')
print(train_x.head())
train_y = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/train_y.csv')
print(train_y.head())
test_x = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/test_x.csv')
print(test_x)
# Modeling
from lightgbm import LGBMClassifier
lgb = LGBMClassifier(colsample_bytree=0.6, subsample=0.8)
lgb.fit(train_x, train_y)
preds_lgb = lgb.predict_proba(test_x)
sub_lgb = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/test_y.csv')
sub_lgb["Activity"] = preds_lgb[:,1]
print(sub_lgb.head())
test_answer = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/test_answer.csv')
# Evaluation
from sklearn.metrics import mean_absolute_error, mean_squared_error, mean_absolute_percentage_error
print('LightGBM MAE')
print(mean_absolute_error(test_answer, sub_lgb))
print('LightGBM MSE')
print(mean_squared_error(test_answer, sub_lgb))回复:如何使用 JMP18 Python 脚本执行机器学习建模 (LGBM)?哦...当我将其视为终端环境而不是 jupyter 笔记本后,代码‘head()’运行良好!
y1 = pd.read_csv('D:/steve.kim/Kaggle/BI Biological Response/y1.csv')
print(y1.head()) 然后我就可以从嵌入的日志中获取代码结果!
所以我认为我也能解决其余的事情。
Activity
0 1
1 1
2 1
3 1
4 1