Child Measures - Language Tasks

import os
import pandas as pd
import seaborn as sns

from hbn.constants import Defaults
from hbn.visualization import visualize

import warnings
warnings.filterwarnings("ignore")

%load_ext autoreload
%autoreload 2

%matplotlib inline

# pio.renderers.default = 'iframe'

import ipywidgets as widgets       # interactive display
%config InlineBackend.figure_format = 'svg' # other available formats are: 'retina', 'png', 'jpeg', 'pdf'
# load model data

MODEL_DIR = os.path.join(Defaults.MODEL_DIR, '2022-11-25_20:00:07.194478')

df_classify = pd.read_csv(os.path.join(MODEL_DIR, 'classifier-all-phenotypic-models-performance.csv'))
df_classify['data'] = df_classify['data'].map({'model-data': 'null', 'model-null': 'data'})
df_feature = pd.read_csv(os.path.join(MODEL_DIR, 'classifier-feature_importance.csv'))
# set plotting style
visualize.plotting_style()
df1 = df_classify[(df_classify['target']=='DX_01_Cat_binarize') & 
                  (df_classify['assessment']=='Child Measures') & 
                  (df_classify['domains']=='Language Tasks')]


visualize.predictive_modeling(df=df1)

Parent Measures - Demographics


measures = ['Affective Reactivity Index-Parent',
       'Autism Spectrum Screening Questionnaire',
       'Barratt Simplified Measure of Social Status',
       'Child Behavior Checklist', 'Child Mind Institute Symptom Checker',
       'Demographics',
       'Extended Strengths and Weaknesses Assessment of Normal Behavior-Parent Report',
       'Financial Support Questionnaire',
       'Inventory of Callous-Unemotional Traits – Parent Report']


df1 = df_classify[(df_classify['target']=='DX_01_Cat_binarize') & 
                  (df_classify['assessment']=='Parent Measures') & 
                  (df_classify['domains']=='Demographic Questionnaire Measures')]

df1 = df1[df1['measures'].isin(measures)]
visualize.predictive_modeling(df=df1)

Parent Measures - Demographics

measures = ['Mood and Feelings Questionnaire', 'Repetitive Behavior Scale',
       'Screen for Child Anxiety Related Disorders - Parent report',
       'Social Aptitudes Scale', 'Social Communication Questionnaire',
       'Social Responsiveness Scale-2',
       'Strengths and Difficulties Questionnaire (with impact supplement)',
       'Strengths and Weaknesses Assessment of ADHD and Normal Behavior',
       'The Columbia Impairment Scale-Parent Report Version',
       'WHO Disability Assessment Schedule – Parent Report']

df1 = df_classify[(df_classify['target']=='DX_01_Cat_binarize') & 
                  (df_classify['assessment']=='Parent Measures') & 
                  (df_classify['domains']=='Demographic Questionnaire Measures')]


df1 = df1[df1['measures'].isin(measures)]
visualize.predictive_modeling(df=df1)

Parent Measures - Interview of Emotional and Psychological Function


df1 = df_classify[(df_classify['target']=='DX_01_Cat_binarize') & 
                  (df_classify['assessment']=='Parent Measures') & 
                  (df_classify['domains']=='Interview of Emotional and Psychological Function')]


visualize.predictive_modeling(df=df1)

Child Measures - Cognitive Testing


df1 = df_classify[(df_classify['target']=='DX_01_Cat_binarize') & 
                  (df_classify['assessment']=='Child Measures') & 
                  (df_classify['domains']=='Cognitive Testing')]


visualize.predictive_modeling(df=df1)

Child Measures - Questionnaire_Measures_of_Emotional_and_Cognitive_Status


df1 = df_classify[(df_classify['target']=='DX_01_Cat_binarize') & 
                  (df_classify['assessment']=='Child Measures') & 
                  (df_classify['domains']=='Questionnaire Measures of Emotional and Cognitive Status')]


visualize.predictive_modeling(df=df1)

Child Measures - Questionnaire_Measures_of_Emotional_and_Cognitive_Status


df1 = df_classify[(df_classify['target']=='DX_01_Cat_binarize') & 
                  (df_classify['assessment']=='Child Measures')]

cols = ['Physical Fitness and Status', 'Neurologic Function', 'Physiologic Function', 'Vision', 'Motor Skills']

df1 = df1[df1['domains'].isin(cols)]

visualize.predictive_modeling(df=df1)
#import plotly.express as px

# interactive visualization of features
#@widgets.interact(
 #               feature=df_feature['features'].unique(),
 #               )

#def visualize_features(feature):
#    df = df_feature[df_feature['features']==feature]
#    fig = px.line(df, x='feature_names_sum', y='feature_sum', markers=True, title=feature)
#    fig.update_xaxes(showticklabels=False)
#    fig.update_xaxes(type='category')
    
#    fig.show()