rassemble les dates dans un groupe d'entrées
- respecte le modèle de données - permet ainsi l'applatissement ultérieur avec libellé - close #3
This commit is contained in:
parent
c9bc307711
commit
5b233db286
@ -5,28 +5,27 @@ import pathlib
|
||||
import datetime
|
||||
|
||||
"""
|
||||
ajoute une valeur de date lisible par un humain à chaque entrée d'un document JSON
|
||||
|
||||
TODO: rassembler les dates dans un groupe d'entrées
|
||||
ajoute une valeur de date lisible par un humain pour chaque entrée dans le JSON
|
||||
|
||||
"""
|
||||
|
||||
def from_stamp(i: int) -> str:
|
||||
"""normalise une date UNIX"""
|
||||
dt = str(i)
|
||||
if len(dt)>10:
|
||||
dt = dt[:10]
|
||||
sdt = str(datetime.datetime.fromtimestamp(int(dt)))
|
||||
return sdt
|
||||
|
||||
def proc(path_in):
|
||||
"""traite un document JSON"""
|
||||
|
||||
def stamp2date(i: int) -> str:
|
||||
"""normalise une date UNIX"""
|
||||
dt = str(i)
|
||||
if len(dt)>10: dt = dt[:10]
|
||||
sdt = datetime.datetime.fromtimestamp(int(dt))
|
||||
return str(sdt).replace(" ","_")
|
||||
|
||||
_json = None
|
||||
with open(path_in,'r') as f:
|
||||
_json = json.load(f)
|
||||
for group in _json:
|
||||
for entry in group["data"]:
|
||||
entry.update({"date":from_stamp(entry["x"])})
|
||||
ids = tuple(i.get("x") for i in _json[0]["data"])
|
||||
dates = [{"x": i,"y": stamp2date(i)} for i in ids]
|
||||
dates_dict = {"name":"date_time", "data":[i for i in dates]}
|
||||
_json.insert(0,dates_dict)
|
||||
return _json
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
Loading…
Reference in New Issue
Block a user