diff --git a/Week02/weighted_Yagiz_Cengiz.py b/Week02/weighted_Yagiz_Cengiz.py new file mode 100644 index 00000000..c5b4247f --- /dev/null +++ b/Week02/weighted_Yagiz_Cengiz.py @@ -0,0 +1,7 @@ +import random + +def weighted_srs(data, n, weights, with_replacement=False): + use_choices = bool(with_replacement or weights) + if use_choices: + return random.choices(data, weights=weights, k=n) + return random.sample(data, n) diff --git a/Week03/shifted_Yagiz_Cengiz.py b/Week03/shifted_Yagiz_Cengiz.py new file mode 100644 index 00000000..c4484044 --- /dev/null +++ b/Week03/shifted_Yagiz_Cengiz.py @@ -0,0 +1,6 @@ +def shifted(data): + if not data: return 0 + n, s = len(data), sorted(data) + mean = sum(data) / n + median = s[n // 2] if n % 2 != 0 else (s[n // 2 - 1] + s[n // 2]) / 2 + return (abs(mean - median) / abs(mean)) * 100 if mean != 0 else 0