{"cells":[{"metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","trusted":true},"cell_type":"code","source":"import pandas as pd \nimport random \nimport os\nimport numpy as np \nimport matplotlib.pyplot as plt \n%matplotlib inline \nimport statsmodels.api as sm \nimport tensorflow as tf \nfrom sklearn import ensemble \nimport tensorflow.keras.backend as K\nimport tensorflow.keras.layers as L\nimport tensorflow.keras.models as M\nfrom tqdm import tqdm \nfrom sklearn.model_selection import train_test_split \nimport seaborn as sns\nfrom tensorflow import keras \n#! conda install -c conda-forge gdcm -y\n#! pip install pylibjpeg pylibjpeg-libjpe","execution_count":null,"outputs":[]},{"metadata":{"_uuid":"d629ff2d2480ee46fbb7e2d37f6b5fab8052498a","_cell_guid":"79c7e3d0-c299-4dcb-8224-4455121ee9b0","trusted":true},"cell_type":"code","source":"import pickle\nwith open('../input/segmented-data/segmentedDataDict.pkl', 'rb') as f:\n    dic= pickle.load(f)\nwith open('../input/segmented-data/segmentedData.npy', 'rb') as f:\n    CTs= np.load(f)\nAE=tf.keras.models.load_model(\"../input/autoencoder/AE.h5\")\n\nCTs[CTs<-2000]=-2000\nCTs=CTs*-1\nCTs=CTs/2000\n\nCTs=CTs.reshape(len(CTs),32,256,256,1)\n\nfrom keras import backend as K\n\n# with a Sequential model\nget_3rd_layer_output = K.function([AE.layers[0].input],\n                                  [AE.layers[10].output])\nfor i in range(len(CTs)):\n    LF=get_3rd_layer_output([CTs[i].reshape(1,32,256,256,1)])[0] #LF latent features of every image\n    #print(LF)\n    if i==0:\n        latent_features=LF\n    else:\n        latent_features=np.concatenate((latent_features,LF))\n\n        latent_f_tabular=[]\n        \n","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"ROOT = \"../input/osic-pulmonary-fibrosis-progression\"\n\ntr = pd.read_csv(f\"{ROOT}/train.csv\")\ntr.drop_duplicates(keep=False, inplace=True, subset=['Patient','Weeks'])\ntr=tr[tr.Patient.isin(dic.keys())]\nlatent_f_tabular=[]\nfor i in range(len(tr)):\n    ind=dic[tr[\"Patient\"].iloc[i]]\n    latent_f_tabular.append(latent_features[ind])\nlatent_f_tabular=np.array(latent_f_tabular)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"latent_f_tabular.shape","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"for i in range(20):\n    tr.insert(i+1,i,latent_f_tabular[:,i])","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"tr.drop(['Weeks','FVC','Percent','Age','Sex','SmokingStatus'],axis='columns', inplace=True)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"tr.to_csv(\"/kaggle/working/latent features.csv\", index=False)","execution_count":null,"outputs":[]}],"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"pygments_lexer":"ipython3","nbconvert_exporter":"python","version":"3.6.4","file_extension":".py","codemirror_mode":{"name":"ipython","version":3},"name":"python","mimetype":"text/x-python"}},"nbformat":4,"nbformat_minor":4}