Guest User

Untitled

a guest
Feb 1st, 2023
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.45 KB | None | 0 0
  1. import numpy as np
  2. #import matplotlib.pyplot as plt
  3. import pandas as pd
  4. import math
  5.  
  6. def debug(y):
  7.     print(y)
  8.     exit()
  9.  
  10. data = pd.read_csv('/content/drive/MyDrive/train.csv') #add file path //C:
  11. data_test = pd.read_csv('/content/drive/MyDrive/test.csv') #add file path
  12. rawData = np.asarray(data_test)
  13.  
  14. x_test = []
  15.  
  16. def convert(x):
  17.     if (x == 'S'): return 1
  18.     elif (x == 'Q'): return 2
  19.     return 3
  20.  
  21. cnt = 0
  22. val = 0
  23. for i in range (0,len(rawData)):
  24.     if (math.isnan(rawData[i][4])): continue
  25.     else:
  26.         cnt += rawData[i][4]
  27.         val += 1
  28. med = val/cnt
  29.  
  30. for i in range(0,len(rawData)):
  31.     x_test.append([])
  32.     x_test[i].append(rawData[i][1])
  33.    
  34.     if (rawData[i][3] == 'male'): x_test[i].append(1)
  35.     else: x_test[i].append(0)
  36.     #x_test[i].append(rawData[i][3])
  37.  
  38.     if (math.isnan(rawData[i][4])): x_test[i].append(med)
  39.     else: x_test[i].append(rawData[i][4])
  40.  
  41.     x_test[i].append(rawData[i][5])
  42.     x_test[i].append(rawData[i][6])
  43.     x_test[i].append(rawData[i][8])
  44.  
  45.     x_test[i].append(convert(rawData[i][10]))
  46.  
  47. x_test = np.asarray(x_test)
  48.  
  49. x_train = []
  50. y_train = []
  51.  
  52. survive = np.asarray(data.Survived);
  53. for i in range (0,891):
  54.     x_train.append([])
  55.     y_train.append(np.array([survive[i]]))
  56.  
  57. def Add_To_X(a):
  58.     for i in range(0,len(a)): x_train[i].append(a[i])
  59.  
  60. pclass = np.asarray(data.Pclass)
  61. Add_To_X(pclass)
  62.  
  63. gender = np.asarray(data.Sex)
  64. for i in range(0,len(gender)):
  65.     if gender[i] == 'male': x_train[i].append(1)
  66.     else: x_train[i].append(0)
  67.  
  68. age = np.asarray(data.Age)
  69. Add_To_X(age)
  70.  
  71. SibSp = np.asarray(data.SibSp)
  72. Add_To_X(SibSp)
  73.  
  74. Parch = np.asarray(data.Parch)
  75. Add_To_X(Parch)
  76.  
  77. fare = np.asarray(data.Fare)
  78. Add_To_X(fare)
  79.  
  80. embark = np.asarray(data.Embarked)
  81. for i in range (0,891):
  82.     if (embark[i] == 'S'): x_train[i].append(1)
  83.     elif (embark[i] == 'Q'): x_train[i].append(2)
  84.     else: x_train[i].append(3)
  85.  
  86. cnt1 = 0
  87. val1 = 0
  88. for i in range (0,len(x_train)):
  89.     if (math.isnan(x_train[i][2])): continue
  90.     else:
  91.         cnt1 += x_train[i][2]
  92.         val1 += 1
  93. med1 = val1/cnt1
  94.  
  95. for i in range (0,len(x_train)):
  96.     if (math.isnan(x_train[i][2])): x_train[i][2] = med1
  97.  
  98. x_train = np.asarray(x_train)
  99. y_train = np.asarray(y_train)
  100.  
  101. import numpy as np
  102. import tensorflow as tf
  103. from tensorflow.keras.models import Sequential
  104. from tensorflow.keras.layers import Dense
  105. import matplotlib.pyplot as plt
  106. import logging
  107.  
  108. print(x_train.shape)
  109. print(x_test.shape)
  110. exit()
  111.  
  112. def my_leaky_relu(x):
  113.     return tf.nn.leaky_relu(x, alpha=0.003)
  114.  
  115. model = Sequential([
  116.     Dense(units = 2048*3,activation = 'relu'),
  117.     Dense(units = 2048*3,activation = 'relu'),
  118.     Dense(units = 1024*3,activation = 'relu'),
  119.     Dense(units = 1024*3,activation = 'relu'),
  120.     Dense(units = 512*3,activation = 'relu'),
  121.     Dense(units = 1,activation = 'sigmoid')
  122. ])
  123.  
  124. model.compile(
  125.     loss=tf.keras.losses.BinaryCrossentropy(),
  126.     optimizer=tf.keras.optimizers.Adam(0.001),
  127. )
  128. model.fit(x_train,y_train,epochs = 1500)
  129.  
  130. prediction = model.predict(x_test)
  131. for i in range (0,len(prediction)):
  132.     if (prediction[i] >= 0.5): prediction[i] = 1
  133.     else: prediction[i] = 0
  134.  
  135. #print(prediction[0][0])
  136.  
  137. total = []
  138. for i in range (0,len(prediction)):
  139.     now = []
  140.     now.append(892 + i)
  141.     if (prediction[i][0] == 0): now.append(0)
  142.     else: now.append(1)
  143.     total.append(now)
  144.  
  145. #print(total[0])
  146.  
  147. df = pd.DataFrame(total)
  148. df.to_csv('ans.csv')
Advertisement
Add Comment
Please, Sign In to add comment