IML Project
IML Project
ipynb - Colab
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sb
import warnings
warnings.filterwarnings('ignore')
df = pd.read_csv('bitcoin.csv')
df.head()
Next steps: Generate code with df View recommended plots New interactive sheet
df.shape
(2713, 7)
df.describe()
df.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 2713 entries, 0 to 2712
Data columns (total 7 columns):
# Column Non-Null Count Dtype
plt.figure(figsize=(15, 5))
plt.plot(df['Close'])
plt.title('Bitcoin Close price.', fontsize=15)
plt.ylabel('Price in dollars.')
plt.show()
https://colab.research.google.com/drive/10aiAnjw847cPy6koQiQw6ayhIhipEdyw?authuser=0#scrollTo=RmkFxGnnuCM_&printMode=true 1/6
10/19/24, 10:30 PM bit_coin_prediction.ipynb - Colab
df.isnull().sum()
Date 0
Open 0
High 0
Low 0
Close 0
Volume 0
plt.subplots(figsize=(20,10))
for i, col in enumerate(features):
plt.subplot(2,2,i+1)
sb.distplot(df[col])
plt.show()
https://colab.research.google.com/drive/10aiAnjw847cPy6koQiQw6ayhIhipEdyw?authuser=0#scrollTo=RmkFxGnnuCM_&printMode=true 2/6
10/19/24, 10:30 PM bit_coin_prediction.ipynb - Colab
plt.subplots(figsize=(20,10))
for i, col in enumerate(features):
plt.subplot(2,2,i+1)
sb.boxplot(df[col])
plt.show()
https://colab.research.google.com/drive/10aiAnjw847cPy6koQiQw6ayhIhipEdyw?authuser=0#scrollTo=RmkFxGnnuCM_&printMode=true 3/6
10/19/24, 10:30 PM bit_coin_prediction.ipynb - Colab
df['year'] = splitted[0].astype('int')
df['month'] = splitted[1].astype('int')
df['day'] = splitted[2].astype('int')
df.head()
Next steps: Generate code with df View recommended plots New interactive sheet
data_grouped = df.groupby('year').mean()
plt.subplots(figsize=(20,10))
for i, col in enumerate(['Open', 'High', 'Low', 'Close']):
plt.subplot(2,2,i+1)
data_grouped[col].plot.bar()
plt.show()
df['is_quarter_end'] = np.where(df['month']%3==0,1,0)
df.head()
https://colab.research.google.com/drive/10aiAnjw847cPy6koQiQw6ayhIhipEdyw?authuser=0#scrollTo=RmkFxGnnuCM_&printMode=true 4/6
10/19/24, 10:30 PM bit_coin_prediction.ipynb - Colab
Date Open High Low Close Volume year month day is_quarter_end
Next steps: Generate code with df View recommended plots New interactive sheet
plt.pie(df['target'].value_counts().values,
labels=[0, 1], autopct='%1.1f%%')
plt.show()
plt.figure(figsize=(10, 10))
https://colab.research.google.com/drive/10aiAnjw847cPy6koQiQw6ayhIhipEdyw?authuser=0#scrollTo=RmkFxGnnuCM_&printMode=true 5/6
10/19/24, 10:30 PM bit_coin_prediction.ipynb - Colab
scaler = StandardScaler()
features = scaler.fit_transform(features)
(2441, 3) (272, 3)
for i in range(3):
models[i].fit(X_train, Y_train)
print(f'{models[i]} : ')
print('Training Accuracy : ', metrics.roc_auc_score(Y_train, models[i].predict_proba(X_train)[:,1]))
print('Validation Accuracy : ', metrics.roc_auc_score(Y_valid, models[i].predict_proba(X_valid)[:,1]))
print()
LogisticRegression() :
Training Accuracy : 0.5272712493564907
Validation Accuracy : 0.5187429004165088
SVC(kernel='poly', probability=True) :
Training Accuracy : 0.4828745224483161
Validation Accuracy : 0.5278844593498134
https://colab.research.google.com/drive/10aiAnjw847cPy6koQiQw6ayhIhipEdyw?authuser=0#scrollTo=RmkFxGnnuCM_&printMode=true 6/6