New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Sessions Attribute Functionality Discussion. #24
Comments
Also, we need to make sure things like append() work sensibly. I assume we will want to append the session variables just like features. We also might want to create a new session id when appending. Will probably add a flag for this too. Something like |
Do you think it is worth adding a |
I agree that the default behavior should be to iterate over all unique session info. For the |
That won’t work as there can only be one session variable and I don’t think it would be a good idea to have more. If you want to switch session variables I think you should manually change it (eg from subject to trial). It’s too difficult to add in splitting by session variable otherwise. Right now it is a generator.
…-luke
(Sent from phone)
On Feb 11, 2018, at 10:53 AM, Nathaniel Haines ***@***.***> wrote:
I agree that the default behavior should be to iterate over all unique session info. For the ignore_sessions=False flag, would it be better to have ignore_sessions accept a list of column headers? That way, if I want to ignore one session variable (e.g. subject) but not another (e.g. trial), I could set ignore_sessions=['subject']. This could be data added to the class to ensure it is inherited as we chain the methods.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.
|
So I think two use cases should be considered here. However the user needs to do a little more in use case 2 which is when they first append over multiple Subjects x Trials, and try to batch processing on all of them (I think this is the case @Nathaniel-Haines is referring to). This would make it necessary to have a unique session over subject x Trial. Then the user would then need to first generate unique session values for those interactions then pass it into I like the way @ljchang has it coded now for simplicity but we should definitely write in the doc about how to handle the second case (which would be common for trial-based experiments). Also having all functions iterate over sessions should be clarified in docs due to different use cases. For instance |
I think the current design could accomodate subject x trial, just done separately. First, user would process each subject by trial. Second, user would combine subject data and session now becomes subjects. Alternatively, users could come up with a unique subject x trial key (e.g., s001_t1), and process everything. I don't think it will be a good idea to combine subjects by trial in the sessions. We should be able to parallelize processes that iterate over sessions. |
Yup I agree managing unique sessions should be left to the user. |
Here is example for how to use sessions for a feature extraction method.
We could also consider using |
Working on sessions attribute for Fex objects. Right now users can pass in a sessions array that can be iterated over using Fex.itersessions(), exactly the same way that pd.DataFrame.iterrows() works.
Just wanted to run a few things by @jcheong0428 and @Nathaniel-Haines. If Fex.sesssions is not None, should we iterate over every unique session for all preprocessing/descriptive/feature extraction methods? For example,
Fex.downsample()
should probably downsample separately for each unique session (e.g., trial, subject) right? AndFex.clean()
should do the same as well asFex.extract_boft()
The text was updated successfully, but these errors were encountered: