Interesting… It works if calculate my predictions one row at a time.
final_df = pd.DataFrame(columns=['PassengerId', 'Survived'])
i = 0
for datum in test:
final_df.at[i, 'PassengerId'] = datum['PassengerId']
final_df.at[i, 'Survived'] = learn.predict(datum)[0]
i += 1
I found this thread about my exact problem which suggested that since the labels column for the test set was blank, it wouldn’t calculate the actual prediction. I’m not sure I understand this. Since the test set was part of the training databunch, shouldn’t it have generated a value for the label?