<aside> 💡 Uma Decision Tree Classifier é mais apropriada para problemas de classificação, onde o objetivo é prever uma classe ou categoria específica. Enquanto uma Decision Tree Regressor é mais adequada para prever valores numéricos. Ela é capaz de mapear as características dos passageiros para estimar um valor contínuo.

</aside>

Primeiro temos que carregar o ficheiro csv e abrir como leitura

'''
Load CSV
'''
df = pd.read_csv('nome.csv')

A seguir, podemos inspecionar o dataset

'''
Inspect dataset
'''
df.columns

==> Index(['PassengerID'], 'Survived', 'Pclass', 'Name', 'Sex', 'Age'].
						dtype='object')

Agora temos que definir o nosso input e nossa feature escolhida

Logo, X será uma tabela aonde cada coluna é um dado e Y será uma tabela só com a coluna da feature escolhida.

#feature escolhida => 'Survived'
x = df.frop(['Survived'], axis=1) # Tudo exceto a feature escolhida
y = df['Survived'].to_frame()     # A featura escolhida

Agora, temos que separar uma pequena parte do dataset afim de o usar para testar o modelo (geralmente 25%):

x_train, x_test, y_train, y_test = train_test_split(x,y, test_size=0.25, random_state=2021)
# test_size = 0.25 => 25%
# random_state => Seed para termos sempre os mesmos resultados

Assim, teremos uma parte do dataset para treinamento e outra parte para teste do modelo.

Untitled

Implementação:

Por exemplo, prever se um passageiro sobreviveria ao desastre.

Primeiro criamos uma instância do classificador e depois usamos a função fit.

clf = DecisionTreeClassifier(random_state=2021)
clf.fit(x_train, y_train)

Isto daria erro, porque este modelo não consegue lidar com dados categóricos, então devemos usar por exemplo etiquetas(label) ou One-Hot encoding.