创建新坐标并分配给特定数据点

问题描述

我有这个数据集:

<xarray.Dataset>
Dimensions:                     (Exercise: 10,Rep: 11,Set: 20,Workout Start Time: 45)
Coordinates:
  * Exercise                    (Exercise) object 'Behind The Neck Press' ......
  * Workout Start Time          (Workout Start Time) datetime64[ns] 2020-02-2...
  * Set                         (Set) int64 1 2 3 4 5 6 7 ... 15 16 17 18 19 20
  * Rep                         (Rep) int64 1 2 3 4 5 6 7 8 9 10 11
Data variables:
    Avg VeLocity (m/s)          (Exercise,Workout Start Time,Set,Rep) float64 ...
    Weight                      (Exercise,Set) float64 n...
    Max Avg VeLocity (m/s)      (Exercise,Set) float64 n...
    Session Max Weight          (Exercise,Workout Start Time) float64 nan .....
    Minimum VeLocity Threshold  (Exercise) float64 0.146 0.212 ... 0.184 0.287

我想做的是创建一个新坐标:{'Set Category': ['Work Up','Top Set','Back Off']}

应将其放在Workout Start TimeSet之间,此部分易于转置。

困难的是,根据以下逻辑,数据点应属于每个坐标值:

  1. Top Set:所有集合中的第Set个,其中Weight == Session Max Weight
  2. Work UpTop Set之前的所有集合
  3. Back OffTop Set
  4. 之后的所有集合

我的第一个想法是将坐标添加到所有数据点,然后按Set Category将其拆分为一个部分。然后,通过使用.where()屏蔽不需要的值。但是我迷路了。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)