seminars.fb


from random import randint
from decimal import Decimal

from time import perf_counter
from contextlib import contextmanager
@contextmanager
def timed():
    try:
        start = perf_counter()
        yield
    finally:
        end = perf_counter()
        print(f'Elapsed: {end - start:.2f}s')

with timed():
    xs = [Decimal(randint(0, 100)) for _ in range(10_000_000)]

def avg(xs):
    return sum(xs) / len(xs)

with timed():
    print(f'{avg(xs) = }')
from sys import getsizeof
print(f'{getsizeof(10) = }')
print(f'{getsizeof(10.0) = }')
print(f'{getsizeof(10 ** 20_000) = }')

Restricted computation domain:

from time import perf_counter
from contextlib import contextmanager
@contextmanager
def timed():
    try:
        start = perf_counter()
        yield
    finally:
        end = perf_counter()
        print(f'Elapsed: {end - start:.2f}s')

from numpy import array
from numpy.random import randint

with timed():
    xs = randint(0, 100, size=(10_000_000))

with timed():
    print(f'{xs.sum() = }')
from numpy import array
from numpy.random import randint

xs = randint(0, 1000, size=24)
xs = xs.reshape(2, 3, 4)
print(f'{xs}')
print(f'{xs.dtype   = }')
print(f'{xs.shape   = }')
print(f'{xs.strides = }')
print(f'{xs.__array_interface__ = }')
print(f'{xs}')
from numpy.random import randint
xs = randint(-32, 212, size=24)
print(f'{xs = }')
from pandas import DataFrame, to_datetime
from datetime import datetime, timedelta

from numpy import array
from numpy.random import randint
SIZE = 5
device_temp = randint(-32, 212, size=SIZE)
ambient_temp = randint(-32, 212, size=SIZE)
times = array([timedelta(seconds=randint(0, 60)) for _ in range(SIZE)]).cumsum() + datetime.now()

df = DataFrame({
    'device': device_temp,
    'ambient': ambient_temp,
}, index=to_datetime(times))

print(df)
rv = df.resample(rule='30s').mean()
print(rv)