<jupyter_start><jupyter_text>Let's see which columns give the best average accuracy<jupyter_code>grouped_by_cols = w_dummy_results.groupby(by='columns_used').mean()
grouped_by_cols.sort_values('accuracy', ascending=False)<jupyter_output><empty_output><jupyter_text>Winners and Loser (+Fringers?): Winners (Greater than 70%):- elo_diff, start_time, weekday = 71.5%- elo_diff, start_time, game_time, weekday = 70.8% Losers (Less than 2/3 (66.67%)):- elo_diff, color, weekday = 65.9%- elo_diff, color, game_time, weekday = 66.3%- elo_diff, color = 66.4% Winners on the fringe (Above 69%, less than 70%):- elo_diff, color, start_time, game_time, weekday = 69.4%- elo_diff, game_time = 69.4%- elo_diff = 69.3%- elo_diff, color, start_time, weekday = 69.2% Losers on the fringe (Above 66.67%, less than 68%):- elo_diff, color, game_time = 66.8%- elo_diff, color, start_time = 67.0%- elo_diff, start_time = 67.8% In-Betweeners (Between 68% and 69%):- elo_diff, start_time, game_time = 68.9%- elo_diff, weekday = 68.5%- elo_diff, game_time, weekday = 68.5%- elo_diff, color, start_time, game_time = 68.4%  Real Test! Group columns by the column name, loss function, and optimizer<jupyter_code>grouped_by_cols = w_dummy_results.groupby(by=['columns_used', 'loss_function', 'optimizer']).mean()
grouped_df = grouped_by_cols.sort_values(by='accuracy', ascending=False).reset_index()
grouped_df[grouped_df['accuracy']>=72]
grouped_df[grouped_df['accuracy']<66]
print('BY Column Name:\nLess than 67%:')
print(grouped_df[grouped_df['accuracy']<=67].columns_used.value_counts())
print('\n\nBY Column Name:\nGreater than 71%:')
print(grouped_df[grouped_df['accuracy']>=71].columns_used.value_counts())
print('\n\nBY Loss Function:\nLess than 67%:')
print(grouped_df[grouped_df['accuracy']<=67].loss_function.value_counts())
print('\n\nBY Loss Function:\nGreater than 71%:')
print(grouped_df[grouped_df['accuracy']>=71].loss_function.value_counts())
print('\n\nBY Optimizer:\nLess than 67%:')
print(grouped_df[grouped_df['accuracy']<=67].optimizer.value_counts())
print('\n\nBY Optimizer:\nGreater than 71%:')
print(grouped_df[grouped_df['accuracy']>=71].optimizer.value_counts())<jupyter_output>BY Column Name:
Less than 67%:
elo_diff, color, weekday                13
elo_diff, color, game_time, weekday     10
elo_diff, color                          9
elo_diff, color, game_time               7
elo_diff, color, start_time              5
elo_diff, weekday                        3
elo_diff, game_time, weekday             2
elo_diff, color, start_time, weekday     2
elo_diff, start_time, game_time          1
elo_diff                                 1
elo_diff, start_time                     1
Name: columns_used, dtype: int64


BY Column Name:
Greater than 71%:
elo_diff, start_time, game_time, weekday    9
elo_diff, start_time, weekday               9
elo_diff, color, start_time, weekday        2
elo_diff, start_time, game_time             2
elo_diff                                    2
elo_diff, game_time                         1
Name: columns_used, dtype: int64


BY Loss Function:
Less than 67%:
mae                    19
mse                    18
binary_crossentropy    17
Name:[...]
{'fraction_non_alphanumeric': 0.12782663316582915, 'fraction_numerical': 0.0417713567839196, 'mean_word_length': 3.7822822822822824, 'pattern_counts': {'":': 0, '<': 12, '<?xml version=': 0, '>': 12, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '2', 'dir': 'jupyter-structured-clean-dedup', 'id': '609310', 'license': 'Unlicense', 'n_tokens_mistral': 1223, 'n_tokens_neox': 1109, 'n_words': 261, 'path': 'src/old_files/ann_result_analysis.ipynb', 'repo_name': 'Data-is-life/lots-of-data', 'size': '3184'}