{"cells":[{"metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","trusted":true},"cell_type":"code","source":"#Below code predict the starting stages using already trained models generated\n\nimport numpy as np # linear algebra\nimport pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)\nfrom keras.models import Sequential\nfrom keras.layers import Dense\nfrom keras.layers import LSTM\nfrom keras.layers import Dropout\nfrom keras.layers import Conv1D,Conv2D\nfrom sklearn.preprocessing import MinMaxScaler\nfrom keras.optimizers import Adam\nfrom sklearn.model_selection import train_test_split\nimport matplotlib.pyplot as plt\nfrom keras.layers import Flatten\nfrom keras.layers import Dropout,Activation\nfrom keras.layers.convolutional import Conv1D\nfrom keras.layers.convolutional import MaxPooling1D\nfrom keras.models import load_model\nimport keras\nimport pickle\n\nimport os\nfor dirname, _, filenames in os.walk('/kaggle/input'):\n    for filename in filenames:\n        print(os.path.join(dirname, filename))\n    \n\ndf_train=pd.read_csv('/kaggle/input/conways-reverse-game-of-life-2020/train.csv')\noutput_column_name_list=df_train.iloc[:,1:627].columns\n\ndef reshape_input(X):\n    return X.reshape(X.shape[0], X.shape[1], X.shape[2], 1)\n\ndf_test=pd.read_csv('/kaggle/input/conways-reverse-game-of-life-2020/test.csv')\nprint(df_test)\ndf_test=df_test.sort_values(by='delta', ascending=True)\ndelta_list=df_test['delta'].tolist()\nprint(df_test)\nid_list=df_test['id'].tolist()\n\nnp_input_data=df_test.iloc[:,2:].values\nprint(np_input_data)\ncomplete_input_array=[]\n\n#rearange the data in the form of 2d matrix(25x25)\nfor i in range(np_input_data.shape[0]):\n    \n    row_array=[]\n    np_input = np.empty((0,25), int)\n    column_count=1\n    for j in range(np_input_data.shape[1]):\n       \n        if column_count < 26:\n            row_array.append(np_input_data[i][j])\n            \n            if column_count == 25:\n                np_input=np.append(np_input,np.array([np.asarray(row_array)]), axis=0)\n                row_array=[]\n                column_count=0\n        \n        column_count=column_count+1\n    \n    \n    \n    complete_input_array.append(np_input)\n\ncomplete_input_array_=reshape_input(np.asarray(complete_input_array))\n\n\n#Obtaining the output predictions form the trained models according to the delta value.\nlist_=[]\n\n# for j in range(len(delta_list)):\nvar_=0\nfor i in range(complete_input_array_.shape[0]):\n    if delta_list[i]!=var_:\n        if delta_list[i]==1:\n            print('one')\n            var_=1\n            model= load_model('../input/modelss/delta_1')\n        elif delta_list[i]==2:\n            print('two')\n            var_=2\n            model= load_model('../input/modelss/delta_2')\n        elif delta_list[i]==3:\n            print('three')\n            var_=3\n            model= load_model('../input/modelss/delta_3')\n        elif delta_list[i]==4:\n            print('four')\n            var_=4\n            model= load_model('../input/modelss/delta_4')\n        elif delta_list[i]==5:\n            print('five')\n            var_=5\n            model= load_model('../input/modelss/delta_5')\n    \n    result=model.predict_on_batch(complete_input_array_[i:i+1])\n    result = (result > 0.4).astype(int)\n    list_.append(result.flatten().reshape(-1,625)[0])\n#     print(i)\n    \n# print(np.asarray(list_))\nsubmission_df = pd.DataFrame(np.asarray(list_),columns=list(output_column_name_list[1:]))\nprint(submission_df)\n# print(submission_df)\n\n\ndf_sample=pd.read_csv('/kaggle/input/conways-reverse-game-of-life-2020/sample_submission.csv')\n\nsubmission_df.insert(0,'id', id_list)\nprint(submission_df)\n\nsubmission_df=submission_df.sort_values(by='id', ascending=True)\nsubmission_df.to_csv('submission.csv',index=False)","execution_count":null,"outputs":[]},{"metadata":{"_uuid":"d629ff2d2480ee46fbb7e2d37f6b5fab8052498a","_cell_guid":"79c7e3d0-c299-4dcb-8224-4455121ee9b0","trusted":true},"cell_type":"code","source":"","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}