vertical or horizontal storage of timesteps in feature store

I'd like to use a feature store to store some time series and I asked myself what's the best way to store the timesteps. Is it better to store each timestep horizontal and then doing windowing after collecting it from the feature store to create the feature vector. Or is it better to store all timestep addiotionally in a column and doing the windowing before storing it to the feature store. Personally I think the better way is, to do the windowing after storing it to the feature store, becouse it will need less memory to store it and I can easily use a more variale window size for my model, but what's the common way to do it?

To be clear hear some example: The resulting feature vector should consist of 2 timesteps

[t,t-1]

is it better to store it this way

┌─────┐
│ n   │
│ --- │
│ i64 │
╞═════╡
│ 1   │
├╌╌╌╌╌┤
│ 2   │
├╌╌╌╌╌┤
│ 3   │
└─────┘

and doing windowing with after it to get the needed feature vector or is it better to store it this way so i can directly collect the feature vector from the feature store.

┌─────┬──────┐
│ n   ┆ n-1  │
│ --- ┆ ---  │
│ i64 ┆ i64  │
╞═════╪══════╡
│ 1   ┆ null │
├╌╌╌╌╌┼╌╌╌╌╌╌┤
│ 2   ┆ 1    │
├╌╌╌╌╌┼╌╌╌╌╌╌┤
│ 3   ┆ 2    │
└─────┴──────┘

Topic features feature-engineering feature-selection

Category Data Science

About

Geeks Mental is a community that publishes articles and tutorials about Web, Android, Data Science, new techniques and Linux security.