DSLR/Ft_array.py

74 lines
1.5 KiB
Python

from feature_scaling import *
import pandas as pd
import math
def ft_mediane(array):
array = array.tolist()
lena = len(array)
array.sort()
if (lena % 2):
return (array[int(lena / 2)] + array[int((lena + 1) / 2)]) / 2
return array[lena / 2]
def ft_min(array):
ret = False
for rows in array:
ret = rows if ret is False or rows < ret else ret
return ret
def ft_max(array):
ret = False
for rows in array:
ret = rows if ret is False or rows > ret else ret
return ret
def ft_mode(array):
lst = list(array.astype(int))
return(max(lst, key=lst.count))
def ft_mean(array):
return sum(array) / len(array)
def ft_std_mediane(array):
lena = len(array) - 1
suma = 0
meda = ft_mediane(array)
for elem in array:
suma += (elem - meda)**2
std = (1 / lena) * suma
std = math.sqrt(std)
return std
def ft_std(array):
lena = len(array) - 1
suma = 0
mean = ft_mean(array)
for elem in array:
suma += (elem - mean)**2
std = (1 / lena) * suma
std = math.sqrt(std)
return std
def ft_count(array):
return len(array)
def ft_percentile(array, percent):
lena = len(array)
array.sort()
n = lena * percent / 100
return array[int(n)]
def ft_median(array):
return ft_percentile(array.tolist(), 50)
def ft_first_quar(array):
return ft_percentile(array.tolist(), 25)
def ft_third_quar(array):
return ft_percentile(array.tolist(), 75)
def ft_normalize(array):
return rescaling(array)