Skip to content
Snippets Groups Projects
Commit 897c9db5 authored by Richter, Manuela's avatar Richter, Manuela
Browse files

updated code style regarding flake8 comments

parent 76b78c71
No related branches found
No related tags found
No related merge requests found
# -*- coding: utf-8 -*-
"""
Created on Thu May 5 17:27:38 2022
Created on Thu May 5 17:27:38 2022 .
@author: Richter
testfile for operating with json-files
"""
#%% import moduls
# %% import moduls
import json
import numpy as np
# import numpy as np
import pandas as pd
import h5py as h5
# import h5py as h5
# %% define functions
#%% define functions
def findkeys(node, kv):
'''
https://stackoverflow.com/questions/9807634/find-all-occurrences-of-a-key-in-nested-dictionaries-and-lists
"""
https://stackoverflow.com/questions/9807634/find-all-occurrences-of-a-key-in-nested-dictionaries-and-lists.
Parameters
----------
......@@ -30,46 +32,84 @@ def findkeys(node, kv):
TYPE
DESCRIPTION.
'''
"""
if isinstance(node, list):
for i in node:
for x in findkeys(i, kv):
yield x
yield x
elif isinstance(node, dict):
if kv in node:
yield node[kv]
for j in node.values():
for x in findkeys(j, kv):
yield x
def find_attribut(data,attribut):
name_pump = list(findkeys(data, "Name"))
efficiency_pump = list(findkeys(data, attribut))
#print("Die Pumpe",name_pump[0],"besitzt den Wirkungsgrad", efficiency_pump[0])
return name_pump, efficiency_pump
def find_attribut(data, attribut):
"""
Find attribute of .
----------
data : TYPE
DESCRIPTION.
attribut : TYPE
DESCRIPTION.
Returns
-------
name_pump : TYPE
DESCRIPTION.
efficiency_pump : TYPE
DESCRIPTION.
"""
name_pump = list(findkeys(data, "Name"))
efficiency_pump = list(findkeys(data, attribut))
# print("Die Pumpe",name_pump[0],"besitzt den Wirkungsgrad", efficiency_pump[0])
return name_pump, efficiency_pump
def calculate_efficiency(eta_1, eta_2):
"""
Parameters.
----------
eta_1 : TYPE
DESCRIPTION.
eta_2 : TYPE
DESCRIPTION.
Returns
-------
eta : TYPE
DESCRIPTION.
"""
eta = eta_1 * eta_2
return eta
#%% main script
with open("test_data.json","r+") as file:
# %% main script
with open("test_data.json", "r+") as file:
data = json.load(file)
a = data.keys()
#print(a)
# print(a)
# read out key - value - pairs
for i in a:
key = data[i]
for j in range(0,len(key)):
#print(j)
for j in range(0, len(key)):
# print(j)
dic = key[j]
attrs = list(dic.keys())
for x in attrs:
name = list(findkeys(dic, x))
#print("Maschinenart", i, "Das Attribut",x, "hat den Wert", name)
# print("Maschinenart", i, "Das Attribut",x, "hat den Wert", name)
# find specific data
machine = "Motors"
......@@ -77,16 +117,16 @@ attribut = "Efficiency"
data_pumps = data["Pumps"]
data_motors = data["Motors"]
dataset = pd.DataFrame()
#pump_1 = data_pumps[0]
# pump_1 = data_pumps[0]
# Iteration über Attribute einfügen
for i in range(0,len(data_pumps)):
for i in range(0, len(data_pumps)):
attr_name = list(findkeys(data_pumps[i], "Name"))
attr_value = list(findkeys(data_pumps[i], attribut))
#attr_name, attr_value = find_attribut(data_pumps[i], attribut)
#efficiency_pump)
print("Die",machine,attr_name[0],"besitzt das Attribut",attribut, "mit dem Wert", attr_value[0])
# attr_name, attr_value = find_attribut(data_pumps[i], attribut)
# efficiency_pump)
print("Die", machine, attr_name[0], "besitzt das Attribut", attribut, "mit dem Wert", attr_value[0])
# multiplicate the pump efficiency with the motor efficiency
......@@ -97,29 +137,23 @@ eta_pumpe_2 = list(findkeys(data["Pumps"][1], "Efficiency"))[0]
count = 0
#iteration over all pumps and motors
for p in range(0,len(data_pumps)):
for m in range(0,len(data_motors)):
eta_pumpe=list(findkeys(data_pumps[p], attribut))[0]/100
eta_motor=list(findkeys(data_motors[m], attribut))[0]/100
# iteration over all pumps and motors
for p in range(0, len(data_pumps)):
for m in range(0, len(data_motors)):
eta_pumpe = list(findkeys(data_pumps[p], attribut))[0]/100
eta_motor = list(findkeys(data_motors[m], attribut))[0]/100
eta_ges = calculate_efficiency(eta_pumpe, eta_motor)
scenario = "Szenario_" + str(count)
dataset[scenario] = [eta_pumpe,eta_motor,eta_ges]
dataset.index = ["eta_pumpe","eta_motor","eta_ges"]
count +=1
print(p,m,eta_ges)
#%% store dataframe in hdf5-file
dataset[scenario] = [eta_pumpe, eta_motor, eta_ges]
dataset.index = ["eta_pumpe", "eta_motor", "eta_ges"]
count += 1
print(p, m, eta_ges)
# %% store dataframe in hdf5-file
filename = "example_kpi.h5"
with pd.HDFStore(filename, "a") as hdf:
try:
dataset.to_hdf(hdf,"Berechnung")
dataset.to_hdf(hdf, "Berechnung")
except ValueError:
print("Gruppe existiert bereits.")
with h5.File(filename, "a") as hdf:
grp = hdf.get("Test")
grp_2 = hdf.get("Berechnung")
print(grp, grp_2)
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment