Difference between revisions of "TF: TensorFlow Linear Regresion Text data"
Onnowpurbo (talk | contribs) (Created page with "Untuk melakukan regresi linear pada file Excel yang memiliki kolom fitur berupa string/teks dan target Y berupa nilai floating point, serta memprediksi nilai Y untuk dataset b...") |
Onnowpurbo (talk | contribs) |
||
Line 2: | Line 2: | ||
==1. Mengimpor Pustaka yang Diperlukan== | ==1. Mengimpor Pustaka yang Diperlukan== | ||
− | Pastikan Anda mengimpor pustaka yang diperlukan seperti `pandas`, `numpy`, `scikit-learn`, dan `category_encoders`. | + | Pastikan Anda mengimpor pustaka yang diperlukan seperti `pandas`, `numpy`, `scikit-learn`, dan `category_encoders`. |
import pandas as pd | import pandas as pd |
Latest revision as of 10:39, 18 March 2025
Untuk melakukan regresi linear pada file Excel yang memiliki kolom fitur berupa string/teks dan target Y berupa nilai floating point, serta memprediksi nilai Y untuk dataset baru dengan struktur serupa namun tanpa nilai Y, Anda dapat mengikuti langkah-langkah berikut di Google Colab:
1. Mengimpor Pustaka yang Diperlukan
Pastikan Anda mengimpor pustaka yang diperlukan seperti `pandas`, `numpy`, `scikit-learn`, dan `category_encoders`.
import pandas as pd import numpy as np from sklearn.model_selection import train_test_split from sklearn.linear_model import LinearRegression from sklearn.metrics import mean_squared_error from sklearn.preprocessing import OneHotEncoder import category_encoders as ce
2. Mengunggah dan Membaca File Excel
Gunakan fitur unggah file di Google Colab untuk mengunggah file Excel Anda, kemudian baca file tersebut menggunakan `pandas`.
from google.colab import files # Unggah file pertama (dengan target Y) uploaded = files.upload() file_name_1 = list(uploaded.keys())[0] df_train = pd.read_excel(file_name_1) # Unggah file kedua (tanpa target Y) uploaded = files.upload() file_name_2 = list(uploaded.keys())[0] df_test = pd.read_excel(file_name_2)
3. Memisahkan Fitur dan Target
Pisahkan kolom fitur dan kolom target dari dataset pertama.
# Misalkan kolom terakhir adalah target Y X_train = df_train.iloc[:, :-1] y_train = df_train.iloc[:, -1] # Untuk dataset kedua (tanpa target Y) X_test = df_test
4. Mengidentifikasi Kolom Kategorikal
Identifikasi kolom yang berisi data kategorikal (string/teks).
# Menentukan kolom kategorikal categorical_cols = X_train.select_dtypes(include=['object']).columns
5. Mengonversi Variabel Kategorikal Menggunakan One-Hot Encoding
Lakukan one-hot encoding pada kolom kategorikal untuk mengubahnya menjadi format numerik yang dapat digunakan dalam regresi linear.
# One-Hot Encoding untuk data pelatihan encoder = OneHotEncoder(drop='first', sparse=False) X_train_encoded = pd.DataFrame(encoder.fit_transform(X_train[categorical_cols])) X_train_encoded.columns = encoder.get_feature_names_out(categorical_cols) X_train_encoded.index = X_train.index # Menggabungkan kembali dengan kolom numerik X_train_final = pd.concat([X_train.drop(columns=categorical_cols), X_train_encoded], axis=1) # One-Hot Encoding untuk data uji X_test_encoded = pd.DataFrame(encoder.transform(X_test[categorical_cols])) X_test_encoded.columns = encoder.get_feature_names_out(categorical_cols) X_test_encoded.index = X_test.index # Menggabungkan kembali dengan kolom numerik X_test_final = pd.concat([X_test.drop(columns=categorical_cols), X_test_encoded], axis=1)
6. Melatih Model Regresi Linear
Latih model regresi linear menggunakan data pelatihan yang telah diencoding.
# Membuat dan melatih model regresi linear model = LinearRegression() model.fit(X_train_final, y_train)
7. Memprediksi Nilai Y untuk Dataset Kedua
Gunakan model yang telah dilatih untuk memprediksi nilai Y pada dataset kedua.
# Memprediksi nilai Y untuk data uji y_pred = model.predict(X_test_final) # Menambahkan prediksi ke dataframe asli df_test['Predicted_Y'] = y_pred # Menampilkan hasil prediksi print(df_test.head())
Dengan langkah-langkah di atas, Anda dapat melakukan regresi linear pada dataset dengan fitur kategorikal dan memprediksi nilai target untuk dataset baru yang memiliki struktur serupa. Pastikan untuk memeriksa dan membersihkan data Anda sebelum melakukan analisis untuk memastikan hasil yang akurat.