#Importing Needed packages
import pandas as pd from sklearn.tree import DecisionTreeRegressor from sklearn.model_selection import train_test_split
قبل از فراخوانی بستهها باید آنها را نصب داشته باشیم. برای نصب بستهها، قبل از ورود به پایتون و در ترمینال از دستور pip3 install PACKAGE(s) NAME استفاده میکنیم.
#Downloading and Reading Data
data = pd.read_csv("https://cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud/IBMDeveloperSkillsNetwork-ML0101EN-SkillsNetwork/labs/Module%203/data/real_estate_data.csv") print(data.shape) print(data.isna().sum()) #drop missing value data.dropna(inplace=True) print(data.isna().sum())
آدرس فوق یک مثال برای انجام کد است و میتواند داده دیگری جایگزین آن گردد.
#Select some features
X = data.drop(columns=["MEDV"]) Y = data["MEDV"]
#Creating train and test dataset
X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=.2, random_state=1)
#Modeling
regression_tree = DecisionTreeRegressor(criterion = "squared_error") regression_tree.fit(X_train, Y_train) #R2 print(regression_tree.score(X_test, Y_test))
روشهای 'squared_error', 'absolute_error', 'poisson', 'friedman_mse' میتوانند بعنوان معیار تعیین خطا انتخاب شوند.
#Predictions
prediction = regression_tree.predict(X_test)
#Evaluation
print("$",(prediction - Y_test).abs().mean()*1000)
#Visualization
tree.plot_tree(drugTree) plt.show()
برگرفته از Machine learning with Python, IBM Developer
درخت تصمیم گیری در پایتون