onnela-lab / forest

Forest is a library for analyzing smartphone-based high-throughput digital phenotyping data
https://forest.beiwe.org
BSD 3-Clause "New" or "Revised" License
28 stars 16 forks source link

all the input array dimensions except for the concatenation axis must match exactly #195

Closed jflournoy closed 1 year ago

jflournoy commented 1 year ago

Commit hash (the first line of output from git show): commit 9296e581b2699b8ea0731de41c62e9aea445f5c9

Describe the bug When running gps_stats_main on some data from our participants, I get the following error (this comes up for some subsets of the data but not others---we're processing in month chunks)

Observed behavior

Imputing missing trajectories ...
2023-08-09 14:18:43 - ERROR - gps_for_pid - Couldn't decrypt 1002 between 2020-01-22 to 2020-02-26: all the input array dimensions except for the concatenation axis must match exactly, but along dimension 1, the array at index 0 has size 7 and the array at index 1 has size 3
Traceback (most recent call last):
  File "/ncf/mclaughlin_lab_tier1/STAR/2_scripts/Digital_Phenotyping_Pipeline/tasks.py", line 73, in gps_for_pid
    gps_decryptor.process_gps(ses = ses.sub_session, start_date = ses.start, end_date = ses.end)
  File "/ncf/mclaughlin_lab_tier1/STAR/2_scripts/Digital_Phenotyping_Pipeline/GPSDecryptor.py", line 194, in process_gps
    self.summarize_gps(decrypt_dir, ses=ses, start_date=start_date, end_date=end_date)
  File "/ncf/mclaughlin_lab_tier1/STAR/2_scripts/Digital_Phenotyping_Pipeline/GPSDecryptor.py", line 179, in summarize_gps
    gps_stats_main(tmpdirname,
  File "/n/home_fasse/jflournoy/.conda/envs/star_diph/lib/python3.8/site-packages/forest/jasmine/traj2stats.py", line 1088, in gps_stats_main
    imp_table = impute_gps(
  File "/n/home_fasse/jflournoy/.conda/envs/star_diph/lib/python3.8/site-packages/forest/jasmine/mobmat2traj.py", line 1068, in impute_gps
    imp_table = update_table(
  File "/n/home_fasse/jflournoy/.conda/envs/star_diph/lib/python3.8/site-packages/forest/jasmine/mobmat2traj.py", line 602, in update_table
    return np.vstack((imp_table, np.array(list_elem)))
  File "<__array_function__ internals>", line 200, in vstack
  File "/n/home_fasse/jflournoy/.conda/envs/star_diph/lib/python3.8/site-packages/numpy/core/shape_base.py", line 296, in vstack
    return _nx.concatenate(arrs, 0, dtype=dtype, casting=casting)
  File "<__array_function__ internals>", line 200, in concatenate
ValueError: all the input array dimensions except for the concatenation axis must match exactly, but along dimension 1, the array at index 0 has size 7 and the array at index 1 has size 3