37 lines
1.7 KiB
Python
37 lines
1.7 KiB
Python
|
#!/usr/bin/python
|
||
|
|
||
|
from pathlib import Path
|
||
|
import yaml, os
|
||
|
import sys
|
||
|
p = Path(r'data/external/').glob('*')
|
||
|
files = [x for x in p if x.is_file() and x.suffix == "" and "." not in x.stem]
|
||
|
for file in files:
|
||
|
reader = open(file, 'r')
|
||
|
phone = {"DEVICES_IDS" :"", "PLATFORMS" :"", "LABEL" :"", "START_DATE" :"", "END_DATE" :""}
|
||
|
lines = reader.read().splitlines()
|
||
|
if(len(lines) >=1 and len(lines[0]) > 0):
|
||
|
phone["DEVICE_IDS"] = lines[0]
|
||
|
if(len(lines) >=2 and len(lines[1]) > 0):
|
||
|
phone["PLATFORMS"] = lines[1]
|
||
|
if(len(lines) >=3 and len(lines[2]) > 0):
|
||
|
phone["LABEL"] = lines[2]
|
||
|
if(len(lines) >=4 and len(lines[3]) > 0):
|
||
|
phone["START_DATE"] = lines[3].split(",")[0]
|
||
|
phone["END_DATE"] = lines[3].split(",")[1]
|
||
|
new_participant_file = Path(r'data/external/participant_files/') / (file.stem + ".yaml")
|
||
|
os.makedirs(os.path.dirname(new_participant_file), exist_ok=True)
|
||
|
with open(new_participant_file, 'w') as writer:
|
||
|
writer.write("PHONE:\n")
|
||
|
writer.write(" DEVICE_IDS: [{}]\n".format(phone["DEVICE_IDS"]))
|
||
|
writer.write(" PLATFORMS: [{}]\n".format(phone["PLATFORMS"]))
|
||
|
writer.write(" LABEL: {}\n".format(phone["LABEL"]))
|
||
|
writer.write(" START_DATE: {}\n".format(phone["START_DATE"]))
|
||
|
writer.write(" END_DATE: {}\n".format(phone["END_DATE"]))
|
||
|
|
||
|
writer.write("FITBIT:\n")
|
||
|
writer.write(" DEVICE_IDS: [{}]\n".format(phone["DEVICE_IDS"]))
|
||
|
writer.write(" LABEL: {}\n".format(phone["LABEL"]))
|
||
|
writer.write(" START_DATE: {}\n".format(phone["START_DATE"]))
|
||
|
writer.write(" END_DATE: {}\n".format(phone["END_DATE"]))
|
||
|
print("Processed files:")
|
||
|
print(list(map(str, files)))
|