Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pandas as pd
- import numpy as np
- import matplotlib.pyplot as plt
- import seaborn as sns
- # Załadowanie danych do DataFrame
- # df = pd.read_csv(url) # Wczytanie danych bezpośrednio
- df = pd.read_csv('hou_all.csv') # Wczytanie danych lokalnie
- df.columns = ['CRIM', 'ZN', 'INDUS', 'CHAS', 'NOX', 'RM', 'AGE', 'DIS', 'RAD', 'TAX', 'PTRATIO', 'B', 'LSTAT', 'MEDV','BIAS_COL']
- # Wyświetlenie pierwszych kilku wierszy danych
- var = 'Show first 20 lines'
- print(f'{var:*^100}')
- print(df.head(20))
- # wyswietlenie rozmiaru danych wiersze, kolumny
- var = 'Data shape'
- print(f'{var:*^100}')
- print(df.shape)
- # Podstawowe statystyki
- var = 'Basic data'
- print(f'{var:*^100}')
- print(df.describe())
- # Sprawdzenie brakujących danych
- var = 'Check null date'
- print(f'{var:*^100}')
- print(df.isnull().sum())
- # Sprawdzenie duplikatów
- var = 'Check dublicate value'
- print(f'{var:*^100}')
- print(df.duplicated().sum())
- # Wizualizacja rozkładu MEDV
- sns.histplot(df['MEDV'], bins=30, kde=True)
- plt.show()
- # Wizualizacja korelacji między cechami
- corr_matrix = df.corr()
- plt.figure(figsize=(12, 9))
- sns.heatmap(corr_matrix, annot=True)
- plt.show()
- # Wyświetlenie korelacji zmiennych względem MEDV
- var = 'Display the correlation of variables against MEDV'
- print(f'{var:*^100}')
- print(corr_matrix['MEDV'].sort_values(ascending=False))
- from sklearn.model_selection import train_test_split
- # Przygotowanie danych
- X = df.drop('MEDV', axis=1) # Cechy
- y = df['MEDV'] # Zmienna celu
- # Podział danych
- X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
- from sklearn.linear_model import LinearRegression
- from sklearn.metrics import r2_score, root_mean_squared_error
- # Trenowanie modelu regresji liniowej
- lin_reg = LinearRegression()
- lin_reg.fit(X_train, y_train)
- # Przewidywanie i ocena modelu regresji liniowej
- var = 'Predicting and evaluating a linear regression model'
- print(f'{var:*^100}')
- y_pred_lin = lin_reg.predict(X_test)
- print("Regresja liniowa - RMSE:", root_mean_squared_error(y_test, y_pred_lin))
- print("Regresja liniowa - R^2:", r2_score(y_test, y_pred_lin))
- from sklearn.tree import DecisionTreeRegressor
- # Trenowanie modelu drzewa decyzyjnego
- tree_reg = DecisionTreeRegressor(random_state=42)
- tree_reg.fit(X_train, y_train)
- # Przewidywanie i ocena modelu drzewa decyzyjnego
- var = 'Decision tree model prediction and evaluation'
- print(f'{var:*^100}')
- y_pred_tree = tree_reg.predict(X_test)
- print("Drzewo decyzyjne - RMSE:", root_mean_squared_error(y_test, y_pred_tree))
- print("Drzewo decyzyjne - R^2:", r2_score(y_test, y_pred_tree))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement