{"cells":[{"metadata":{"trusted":true},"cell_type":"code","source":"import pandas as pd\n\ndf = pd.read_csv('../input/vin-big-data-predit/submission.csv')\ndf1 = pd.read_csv('../input/noisy-vin-big-data-predit/submission.csv')\ndf_densenet = pd.read_csv('../input/densenet201-vin-big-data-predit/submission.csv')\n\ndf.columns\ndf[['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10',\n       '11', '12', '13', '14']] = df[['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10',\n       '11', '12', '13', '14']] * 0.25 + df1[['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10',\n       '11', '12', '13', '14']] * 0.5 + df_densenet[['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10',\n       '11', '12', '13', '14']] * 0.25","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"df_heart_cnn = pd.read_csv('../input/heart-efn-cnn-predict/submission.csv')","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"df[['0','3']] = df[['0','3']] *0.75 + df_heart_cnn[['0','3']] * 0.25","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"df2 = pd.read_csv('../input/vinbigdata-sub-23-211/submission (18).csv')\ndf3 = pd.read_csv('../input/vinbigdata-sub-23-211/submission (17).csv')","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"df4 = pd.merge(df, df3, on = 'image_id', how = 'left')","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"for i in range(3000):\n    list2 = df4.loc[i,'PredictionString'].split()\n\n    h = ''\n    for j in range(int(len(df4.loc[i,'PredictionString'].split())/6)):\n        if list2[0 + 6 * j] == '0' or list2[0 + 6 * j] == '14' or list2[0 + 6 * j] == '7' or list2[0 + 6 * j] == '13':\n\n            \n            continue\n            \n        h = h + ' ' + list2[0 + 6 * j] + ' ' + list2[1 + 6 * j] + ' ' + list2[2 + 6 * j] + ' ' + list2[3 + 6 * j] + ' ' + list2[4 + 6 * j]+ ' ' + list2[5 + 6 * j]\n    \n        df4.loc[i,'PredictionString'] = h\nfor i in range(3000):\n    list2 = df4.loc[i,'PredictionString'].split()\n    df4.loc[i,'PredictionString'] = ' '.join(list2)","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"df4.iloc[1,16]\n","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"df5 = pd.merge(df, df2, on = 'image_id', how = 'left')","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"df4[['PredictionString']] = df4[['PredictionString']] +' '+ df5[['PredictionString']]","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"list1 = [0,1,2,3,4,5, 6, 7, 8, 9, 10, 11, 12, 13,14]\n\n\nfor i in range(df4.shape[0]):\n    if df4.loc[i,'PredictionString'] == '14 1 0 0 1 1':\n        continue\n    a = df4.loc[i,'PredictionString']\n    b = a.split()\n    for j in range(int(len(a.split())/6)):\n        for k in list1:\n            if int(b[0 + 6 * j]) == k:\n                if df4.loc[i,f'{k}'] < 0.92:\n                    continue\n                c = b[0 + 6 * j + 1]               \n                b[0 + 6 * j + 1] = str(df4.loc[i,f'{k}']* 0.4 + float(c) * 0.6)# * 0.9 + float(c) * 0.1\n\n                \n                # #         if int(b[0 + 6 * j]) == 0:\n# #                 if df4.loc[i,f'{k}'] > 0.92:\n                    \n# #                     c = b[0 + 6 * j + 1]               \n# #                     b[0 + 6 * j + 1] = str(df4.loc[i,f'{k}']* 0.5 + float(c) * 0.5)# * 0.9 + float(c) * 0.1\n        \n# #         if int(b[0 + 6 * j]) == 3:\n# #                 if df4.loc[i,f'{k}'] > 0.92:\n                    \n#                     c = b[0 + 6 * j + 1]               \n#                     b[0 + 6 * j + 1] = str(df4.loc[i,f'{k}']* 0.5 + float(c) * 0.5)# * 0.9 + float(c) * 0.1\n\n        \n    df4.loc[i,'PredictionString'] = ' '.join(b)\n#     df4.loc[i,'PredictionString'] = df4.loc[i,'PredictionString'] + ' ' + str(df4.loc[i,'14'])","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"# list1 = [0,3]\n\n\n# for i in range(df4.shape[0]):\n#     if df4.loc[i,'PredictionString'] == '14 1 0 0 1 1':\n#         continue\n#     a = df4.loc[i,'PredictionString']\n#     b = a.split()\n#     for j in range(int(len(a.split())/6)):\n#         for k in list1:\n#             if int(b[0 + 6 * j]) == k:\n#                 if df_heart_cnn.loc[i,f'{k}'] < 0.92:\n#                     continue\n#                 c = b[0 + 6 * j + 1]               \n#                 b[0 + 6 * j + 1] = str(df_heart_cnn.loc[i,f'{k}']* 0.4 + float(c) * 0.6)# * 0.9 + float(c) * 0.1\n\n                \n#                 # #         if int(b[0 + 6 * j]) == 0:\n# # #                 if df4.loc[i,f'{k}'] > 0.92:\n                    \n# # #                     c = b[0 + 6 * j + 1]               \n# # #                     b[0 + 6 * j + 1] = str(df4.loc[i,f'{k}']* 0.5 + float(c) * 0.5)# * 0.9 + float(c) * 0.1\n        \n# # #         if int(b[0 + 6 * j]) == 3:\n# # #                 if df4.loc[i,f'{k}'] > 0.92:\n                    \n# #                     c = b[0 + 6 * j + 1]               \n# #                     b[0 + 6 * j + 1] = str(df4.loc[i,f'{k}']* 0.5 + float(c) * 0.5)# * 0.9 + float(c) * 0.1\n\n        \n#     df4.loc[i,'PredictionString'] = ' '.join(b)\n# #     df4.loc[i,'PredictionString'] = df4.loc[i,'PredictionString'] + ' ' + str(df4.loc[i,'14'])","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"# for i in range(df5.shape[0]):\n#     a = df5.loc[i,'PredictionString']\n#     b = a.split()\n#     for j in range(int(len(a.split())/6)):\n#         for k in range(15):\n#             if int(b[0 + 6 * j]) == k:\n#                 c = b[0 + 6 * j + 1]\n#                 b[0 + 6 * j + 1] = str(df5.loc[i,f'{k}'] * 0.9 + float(c) * 0.1)\n#                 df4.loc[i,'PredictionString'] = ' '.join(b)+ ' ' + str(df4.loc[i,'14'])","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"for i in range(df4.shape[0]):\n    #df4.loc[i,'PredictionString'] = df4.loc[i,'PredictionString'] + ' ' + '14' + ' ' + str(df4.loc[i,'14']) + ' 0' +' 0' +' 1'+' 1'\n    if df4.loc[i,'14'] > 0.999:\n        df4.loc[i,'PredictionString'] = '14 1 0 0 1 1'\ndf_final = df4[['image_id', 'PredictionString']]\ndf_final.to_csv('submission.csv',index = False)\n","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"df_final\n","execution_count":null,"outputs":[]},{"metadata":{"trusted":true},"cell_type":"code","source":"# for i in range(df4.shape[0]):\n#     if df5.loc[i,'14'] > 0.999:\n#         df5.loc[i,'PredictionString'] = '14 1 0 0 1 1\n# df_final1 = df5[['image_id', 'PredictionString']]\n# df_final1.to_csv('submission1.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}