Spaces:
Runtime error
Runtime error
File size: 1,429 Bytes
8081e11 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
import numpy as np
import pandas as pd
def take_two_sides_extreme_sorted(
df: pd.DataFrame,
n_extreme: int,
part_column: str=None,
head_value: str='',
tail_value: str=''
) -> pd.DataFrame:
head_df = df.head(n_extreme)[:]
tail_df = df.tail(n_extreme)[:]
if part_column is not None:
head_df[part_column] = head_value
tail_df[part_column] = tail_value
return (pd.concat([head_df, tail_df])
.drop_duplicates()
.reset_index(drop=True))
def normalize(
v: np.ndarray
) -> np.ndarray:
"""Normalize a 1-D vector."""
if v.ndim != 1:
raise ValueError('v should be 1-D, {}-D was given'.format(
v.ndim))
norm = np.linalg.norm(v)
if norm == 0:
return v
return v / norm
def project_params(
u: np.ndarray,
v: np.ndarray
) -> np.ndarray:
"""Projecting and rejecting the vector v onto direction u with scalar."""
normalize_u = normalize(u)
projection = (v @ normalize_u)
projected_vector = projection * normalize_u
rejected_vector = v - projected_vector
return projection, projected_vector, rejected_vector
def cosine_similarity(
v: np.ndarray,
u: np.ndarray
) -> np.ndarray:
"""Calculate the cosine similarity between two vectors."""
v_norm = np.linalg.norm(v)
u_norm = np.linalg.norm(u)
similarity = v @ u / (v_norm * u_norm)
return similarity |