this is my df:
feature_name combo p_val *
0 VC9 [rest_closed, immediate_recall] 0.0053 **
1 VC9 [rest_music, immediate_recall] 0.0345 *
2 VC9 [rest_wonder, rest_closed] 0.0010 ***
3 VC9 [rest_wonder, rest_music] 0.0043 **
4 VC9 [rest_wonder, rest_open] 0.0075 **
5 Theta [rest_closed, immediate_recall] 0.0098 **
6 Theta [rest_wonder, rest_closed] 0.0038 **
7 Theta [statements, rest_closed] 0.0187 *
8 Gamma [rest_closed, clock] 0.0230 *
9 Gamma [rest_closed, d1] 0.0111 *
10 Gamma [rest_closed, immediate_recall] 0.0155 *
11 Gamma [rest_closed, nb1] 0.0396 *
12 Gamma [rest_wonder, rest_closed] 0.0065 **
13 Gamma [statements, rest_closed] 0.0175 *
I an trying to reach the p_val through the feature_name & combo. meaning - I want to insert for examplt 'VC9' and [rest_closed, immediate_recall] and to get the matching p_val. everything I tried failed... this is what I have right now -
for feature in features:
for comb in combinations:
pval = df_sigs.loc[(df_sigs['feature_name'].isin([feature])) & (df_sigs['combo'].isin([comb])), df_sigs['p_val']]
And this is the error I get:
TypeError: unhashable type: 'list'
(I want to print the p_val over a plot so I don't need it for more than the one loop)
when I tried other things I also got this error many time:
ValueError: Lengths must match to compare
(for example when I used np.where)
I seriously tried anything I can think of - creating another column of strings that combines the two elemnts of the lists.. unlisting, turning the list to a tuple. I feel like I am missing something very basic.