import pandas as pd
df=pd.read_csv('https://raw.githubusercontent.com/gtchandra/skema-Bootcamp1-students/master/RegressionMetrics.csv')
df
Xfloat64
0.1560545619 - 9.499445639
Yfloat64
2.697662014 - 10.29562048
0
5.280897864
7.247778496
1
3.119653622
5.683908802
2
6.716704783
8.214780093
3
2.658666616
4.378898623
4
7.648770243
8.845747355
5
6.597801298
6.952201469
6
8.02402064
9.410217755
7
9.464054325
9.289761659
8
1.199320982
4.698074817
9
4.847093955
6.5544295
import pandas as pd
import numpy as np
data=pd.read_csv('https://raw.githubusercontent.com/gtchandra/skema-Bootcamp1-students/master/RegressionMetrics.csv')
len(data)
y = data['Y'].values
y1 = data['y1'].values
y2 = data['y2'].values
y3 = data['y3'].values
def compute_mse(array_tested: np.array) -> float:
minus = y - array_tested
minus_2 = minus ** 2
sum_minus_2 = np.sum(minus_2)
return sum_minus_2 / len(minus_2)
for df in [y1, y2, y3]:
print(compute_mse(df))
2.8432726407071467
1.3527314552638108
0.402995656224629
def compute_rmse(array_tested: np.array) -> float:
return np.sqrt(compute_mse(array_tested))
for df in [y1, y2, y3]:
print(compute_rmse(df))
1.6862006525639666
1.1630698410945968
0.6348193886647044
def compute_r_2(array_tested: np.array) -> float:
rss = np.sum((y - array_tested)**2)
tss = np.sum((y - np.mean(y))**2)
return 1 - rss/tss
for df in [y1, y2, y3]:
print(compute_r_2(df))
0.24548096407148567
0.6410257606382835
0.8930570745609673
def func(une_variable_locale: str):
print(une_variable_locale)
func("test")
test
df = pd.DataFrame(columns=['short', 'mid', 'long', 'index'])
df
shortobject
midobject
df['short'] = [15, 1, 4]
df['mid'] = [5, 12, 3]
df['long'] = [3, 4, 34]
df['index'] = ['short', 'mid', 'long']
df = df.set_index('index')
df
shortint64
midint64
short
15
5
mid
1
12
long
4
3
matrix = pd.DataFrame(columns=["T", "F", "index"])
matrix["index"] = ["T", "F"]
matrix = matrix.set_index("index")
matrix
Tobject
Fobject
T
nan
nan
F
nan
nan
matrix["T"]["T"] = sum(df[i][i] for i in df.index)
matrix["F"]["F"] =
matrix
Tobject
Fobject
T
61
nan
F
nan
nan