From 1d21c6418edd20068e09e814d5ac8268a59e1e86 Mon Sep 17 00:00:00 2001 From: Shar0x Date: Fri, 13 Mar 2026 10:33:09 +0300 Subject: [PATCH 1/6] Create weighted_kayraemre_karaosmanoglu.py --- Week02/weighted_kayraemre_karaosmanoglu.py | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 Week02/weighted_kayraemre_karaosmanoglu.py diff --git a/Week02/weighted_kayraemre_karaosmanoglu.py b/Week02/weighted_kayraemre_karaosmanoglu.py new file mode 100644 index 00000000..71eb589d --- /dev/null +++ b/Week02/weighted_kayraemre_karaosmanoglu.py @@ -0,0 +1,11 @@ +import random +def weighted_srs(data, n, weights, with_replacement=True): + if with_replacement: + return random.choices(data, weights=weights, k=n) + + d, w, res = list(data), list(weights), [] + for _ in range(n): + i = random.choices(range(len(d)), weights=w)[0] + res.append(d.pop(i)); w.pop(i) + return res + From 56db39b63caf590cd14614f98e2b923f9df7ad07 Mon Sep 17 00:00:00 2001 From: Shar0x Date: Fri, 13 Mar 2026 10:40:10 +0300 Subject: [PATCH 2/6] Update weighted_kayraemre_karaosmanoglu.py --- Week02/weighted_kayraemre_karaosmanoglu.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/Week02/weighted_kayraemre_karaosmanoglu.py b/Week02/weighted_kayraemre_karaosmanoglu.py index 71eb589d..4a9a79a3 100644 --- a/Week02/weighted_kayraemre_karaosmanoglu.py +++ b/Week02/weighted_kayraemre_karaosmanoglu.py @@ -1,9 +1,8 @@ import random + def weighted_srs(data, n, weights, with_replacement=True): - if with_replacement: - return random.choices(data, weights=weights, k=n) - - d, w, res = list(data), list(weights), [] + if with_replacement: return random.choices(data, weights=weights, k=n) + d, w, res = list(data), list(weights), [] for _ in range(n): i = random.choices(range(len(d)), weights=w)[0] res.append(d.pop(i)); w.pop(i) From 2f64b1ec5729b24902ebfc178461a0258c8081be Mon Sep 17 00:00:00 2001 From: Shar0x Date: Fri, 13 Mar 2026 10:41:22 +0300 Subject: [PATCH 3/6] Update weighted_kayraemre_karaosmanoglu.py --- Week02/weighted_kayraemre_karaosmanoglu.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Week02/weighted_kayraemre_karaosmanoglu.py b/Week02/weighted_kayraemre_karaosmanoglu.py index 4a9a79a3..21a6cc5e 100644 --- a/Week02/weighted_kayraemre_karaosmanoglu.py +++ b/Week02/weighted_kayraemre_karaosmanoglu.py @@ -1,7 +1,8 @@ import random def weighted_srs(data, n, weights, with_replacement=True): - if with_replacement: return random.choices(data, weights=weights, k=n) + if with_replacement: + return random.choices(data, weights=weights, k=n) d, w, res = list(data), list(weights), [] for _ in range(n): i = random.choices(range(len(d)), weights=w)[0] From d4b4b55ecd8789d3fb4384948ea4c5e29d8ea07e Mon Sep 17 00:00:00 2001 From: Shar0x Date: Fri, 27 Mar 2026 10:00:27 +0300 Subject: [PATCH 4/6] Update weighted_kayraemre_karaosmanoglu.py --- Week02/weighted_kayraemre_karaosmanoglu.py | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/Week02/weighted_kayraemre_karaosmanoglu.py b/Week02/weighted_kayraemre_karaosmanoglu.py index 21a6cc5e..66f4147f 100644 --- a/Week02/weighted_kayraemre_karaosmanoglu.py +++ b/Week02/weighted_kayraemre_karaosmanoglu.py @@ -1,11 +1,9 @@ import random - -def weighted_srs(data, n, weights, with_replacement=True): - if with_replacement: - return random.choices(data, weights=weights, k=n) - d, w, res = list(data), list(weights), [] - for _ in range(n): - i = random.choices(range(len(d)), weights=w)[0] - res.append(d.pop(i)); w.pop(i) +def weighted_srs(data, n, weights, with_replacement=False): + w = weights if weights else [1]*len(data) + if with_replacement or weights: + return random.choices(data, weights=w, k=n) + res, d_c = [], list(data) + for _ in range(n): res.append(d_c.pop(random.randrange(len(d_c)))) return res From 105ff7fbd304e52ca938d640def88084f6e05692 Mon Sep 17 00:00:00 2001 From: Shar0x Date: Fri, 27 Mar 2026 17:36:06 +0300 Subject: [PATCH 5/6] Create weighted_kayraemre_karaosmanoglu,py --- weighted_kayraemre_karaosmanoglu,py | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 weighted_kayraemre_karaosmanoglu,py diff --git a/weighted_kayraemre_karaosmanoglu,py b/weighted_kayraemre_karaosmanoglu,py new file mode 100644 index 00000000..0a401055 --- /dev/null +++ b/weighted_kayraemre_karaosmanoglu,py @@ -0,0 +1,6 @@ +import random + +def weighted_srs(data, n, weights, with_replacement=False): + if with_replacement: return random.choices(data, weights=weights, k=n) + if not weights: return random.sample(data, n) + return random.sample(data, n, counts=weights) From 818f99325fe3fde3bd19b5d053449abe8d059942 Mon Sep 17 00:00:00 2001 From: Shar0x Date: Thu, 2 Apr 2026 23:30:16 +0300 Subject: [PATCH 6/6] Create shifted_kayraemre_karaosmanoglu.py --- Week03/shifted_kayraemre_karaosmanoglu.py | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 Week03/shifted_kayraemre_karaosmanoglu.py diff --git a/Week03/shifted_kayraemre_karaosmanoglu.py b/Week03/shifted_kayraemre_karaosmanoglu.py new file mode 100644 index 00000000..b4ac691b --- /dev/null +++ b/Week03/shifted_kayraemre_karaosmanoglu.py @@ -0,0 +1,6 @@ +import statistics + +def shifted(data): + mean = statistics.mean(data) + median = statistics.median(data) + return abs(mean - median) / abs(mean) * 100 if mean != 0 else 0