54 lines
1.6 KiB
Python
54 lines
1.6 KiB
Python
import random
|
|
import winkelumrechnungen as wu
|
|
from typing import List, Tuple
|
|
|
|
def line2example(line: str) -> List:
|
|
"""
|
|
Line-String in Liste umwandeln
|
|
:param line: Line-String
|
|
:return: Liste mit Zahlenwerten
|
|
"""
|
|
split = line.split()
|
|
example = [float(value) for value in split[:7]]
|
|
for i, value in enumerate(example):
|
|
if i < 6:
|
|
example[i] = wu.deg2rad(value)
|
|
# example[i] = value
|
|
return example
|
|
|
|
def get_random_examples(num: int, seed: int = None) -> List:
|
|
"""
|
|
Rückgabe zufälliger Beispiele
|
|
beta0, lamb0, alpha0, beta1, lamb1, alpha1, s12
|
|
:param num: Anzahl zufälliger Beispiele
|
|
:param seed: Random-Seed
|
|
:return: Liste mit Beispielen
|
|
"""
|
|
if seed is not None:
|
|
random.seed(seed)
|
|
with open(r"C:\Users\moell\OneDrive\Desktop\Vorlesungen\Master-Projekt\Python_Masterprojekt\GHA_triaxial\Karney_2024_Testset.txt") as datei:
|
|
lines = datei.readlines()
|
|
examples = []
|
|
for i in range(num):
|
|
example = line2example(lines[random.randint(0, len(lines) - 1)])
|
|
examples.append(example)
|
|
return examples
|
|
|
|
def get_examples(l_i: List) -> List:
|
|
"""
|
|
Rückgabe ausgewählter Beispiele
|
|
beta0, lamb0, alpha0, beta1, lamb1, alpha1, s12
|
|
:param l_i: Liste von Indizes
|
|
:return: Liste mit Beispielen
|
|
"""
|
|
with open("Karney_2024_Testset.txt") as datei:
|
|
lines = datei.readlines()
|
|
examples = []
|
|
for i in l_i:
|
|
example = line2example(lines[i])
|
|
examples.append(example)
|
|
return examples
|
|
|
|
|
|
if __name__ == "__main__":
|
|
get_random_examples(10) |