'hct': 4.0, 'wbc': 2.5 }, ] # Create templates dictionary templates = { 'EXAM': pd.DataFrame(template_exam), 'LAB': pd.DataFrame(template_lab) } # Create data dictionary data = {'EXAM': pd.DataFrame(data_exam), 'LAB': pd.DataFrame(data_lab)} # Create blender blender = Blender(widgets=[RenameWidget(), ReplaceWidget()]) # Fit blender to templates. blender = blender.fit(info=templates) # Transform data transformed = blender.transform(data) # Stack data stacked = blender.stack(transformed, index='pid') # Show print("\nOriginal:") for k, v in data.items(): print("\n%s:" % k) print(v)
def test_widget_replace_from_dict(bt, data): """""" transformed = RenameWidget().fit_transform(bt, data) transformed = ReplaceWidget().fit_transform(bt, transformed) unique = set(transformed.gender.unique()) assert unique.issubset(set(['Male', 'Female']))
'ENROL', 'DAILY', 'INPFU', 'NS1PLATELIA', 'PCR', 'CBC', 'BIO', 'SEROLOGY', 'LAB_DIAGNOSIS' ] # Excel sheets to exclude exclude = ['Category', 'NS1TRIP'] # Read all data sheets data = pd.read_excel(path_fixed, sheet_name=None) tmps = pd.read_excel(path_ccfgs, sheet_name=None) # Create blender blender = Blender(widgets=[ DateTimeMergeWidget(), RenameWidget(), ReplaceWidget(), #TemplateTransformWidget(), EventWidget() ]) # Fit blender to templates. blender = blender.fit(info=tmps) # Transform data transformed = blender.transform(data, include=include, exclude=exclude) # Stacked data stacked = blender.stack(transformed, index='study_no', include=include, exclude=exclude)
'StudyNo': '32dx-002', 'Temp': 36.5, 'Shock': False, 'Sex': 1 }, { 'StudyNo': '32dx-003', 'Temp': 39.8, 'Shock': True, 'Sex': 2 }, { 'StudyNo': '32dx-004', 'Temp': 37.4, 'Shock': False, 'Sex': 1 }] # Blender template bt = BlenderTemplate().fit(template) # Create data data = pd.DataFrame(data) # Create widgets and transform trans = RenameWidget().fit_transform(bt, data) trans = ReplaceWidget().fit_transform(bt, trans) # Show print("\nOriginal:") print(data) print("\nTransformed:") print(trans)
}, ] # Create DataFrames template = pd.DataFrame(template) data = pd.DataFrame(data) #template = template.drop(columns=['timestamp']) #template.timestamp = None #template.event = None #template = template.drop(columns=['to_name']) # Transformed (order matters!) transformed = RenameWidget().fit_transform(template, data) transformed = TemplateTransformWidget().fit_transform(template, transformed) transformed = ReplaceWidget().fit_transform(template, transformed) transformed = DateTimeMergeWidget().fit_transform(template, transformed) transformed = DateFromStudyDayWidget().fit_transform(template, transformed) transformed = EventWidget().fit_transform(template, transformed) # Stack data stacked = StackWidget(index=['study_number']) \ .fit_transform(template, transformed) # Show print("\nOriginal:") print(data) print("\nTransformed:") print(transformed) print("\nStacked:") print(stacked)