Ai-Driven-AgriTech-App / retrain_Crop_yield.py
Raghavendra0827's picture
Upload 6 files
ca51891 verified
raw
history blame contribute delete
No virus
1.06 kB
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
import pickle
warnings.filterwarnings('ignore')
def Crop_yel():
data = pd.read_csv('crop_yield.csv')
columns = ['Crop', 'Season', 'State']
from sklearn.preprocessing import LabelEncoder
encoder = LabelEncoder()
for col in columns:
data[col] = encoder.fit_transform(data[col])
X = data.iloc[:,:-1]
y = data.iloc[:,-1]
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state= 42, test_size= 0.2)
from sklearn.ensemble import ExtraTreesRegressor
from sklearn.metrics import r2_score
model = ExtraTreesRegressor(
n_estimators=200,
criterion='squared_error',
max_depth=20,
min_samples_split=2,
min_samples_leaf=1,
max_features=5,
bootstrap=True,
random_state=42
)
model.fit(X_train, y_train)
pickle.dump(model,open('crop_yield_model.pkl','wb'))