masster 0.3.12__py3-none-any.whl → 0.3.13__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of masster might be problematic. Click here for more details.

masster/study/load.py CHANGED
@@ -170,7 +170,7 @@ def add_sample(self, file, type=None, reset=False, adducts=None):
170
170
  self.logger.error(f"Unsupported file format: {file}")
171
171
  return
172
172
  if ddaobj.features_df is None and not reset:
173
- self.logger.warning(
173
+ self.logger.debug(
174
174
  f"File {file} will be newly processed.",
175
175
  )
176
176
  ddaobj.features = None
@@ -278,8 +278,34 @@ def add_sample(self, file, type=None, reset=False, adducts=None):
278
278
  ).select(
279
279
  ["feature_uid"] + [col for col in f_df.columns if col != "feature_uid"],
280
280
  )
281
- self.features_df = pl.concat([self.features_df, f_df])
282
281
 
282
+ # Reorganize f_df columns to match self.features_df column order and schema
283
+ target_columns = self.features_df.columns
284
+ target_schema = self.features_df.schema
285
+ f_df_columns = f_df.columns
286
+
287
+ # Create select expressions for reordering and type casting
288
+ select_exprs = []
289
+ for col in target_columns:
290
+ if col in f_df_columns:
291
+ # Cast to the expected type
292
+ expected_dtype = target_schema[col]
293
+ select_exprs.append(pl.col(col).cast(expected_dtype, strict=False))
294
+ else:
295
+ # Add missing columns with null values of the correct type
296
+ expected_dtype = target_schema[col]
297
+ select_exprs.append(pl.lit(None, dtype=expected_dtype).alias(col))
298
+
299
+ # Add any extra columns from f_df that aren't in target_columns (keep their original types)
300
+ for col in f_df_columns:
301
+ if col not in target_columns:
302
+ select_exprs.append(pl.col(col))
303
+
304
+ # Reorder and type-cast f_df columns
305
+ f_df = f_df.select(select_exprs)
306
+
307
+ self.features_df = pl.concat([self.features_df, f_df])
308
+
283
309
  # Ensure features_df column order matches schema
284
310
  self._ensure_features_df_schema_order()
285
311
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: masster
3
- Version: 0.3.12
3
+ Version: 0.3.13
4
4
  Summary: Mass spectrometry data analysis package
5
5
  Project-URL: homepage, https://github.com/zamboni-lab/masster
6
6
  Project-URL: repository, https://github.com/zamboni-lab/masster
@@ -36,7 +36,7 @@ masster/study/export.py,sha256=9Bhz8wpO3ZHdwV0iWSX0E38GS3UfqfAFlW9VN8ht2-Y,28845
36
36
  masster/study/h5.py,sha256=UOc4tbeWr8Xa_5Aescz7rMMnkzpu8PSTsOAnTfPv0-E,67109
37
37
  masster/study/helpers.py,sha256=qf5_4DVW5X3MI3TgoZes5bNzuIt-r_esSeJoNOO8a6A,92540
38
38
  masster/study/helpers_optimized.py,sha256=sd87kNPIEPdMijekXzZWSyeZzJ_DTAW8HQjAry-jVyY,13922
39
- masster/study/load.py,sha256=w-HhyQqShgc2R2b3ko3Yy7t-MHLiO9HlSpuOMAdpnZQ,48429
39
+ masster/study/load.py,sha256=bpiyMQU6rtiz4d_EdsI4w1p_T2l8YkRcDmdBUeI3pEk,49571
40
40
  masster/study/parameters.py,sha256=0elaF7YspTsB7qyajWAbRNL2VfKlGz5GJLifmO8IGkk,3276
41
41
  masster/study/plot.py,sha256=Vvbh19f94X8D4aX5mLVyPso-iC0ZpsyQCe3NTib34VU,68389
42
42
  masster/study/processing.py,sha256=EZlzcMmMWcCW0dMdC3tc4r8ii6kncWQC2_Lc_ybfLFc,52286
@@ -54,8 +54,8 @@ masster/study/defaults/integrate_chrom_def.py,sha256=0MNIWGTjty-Zu-NTQsIweuj3UVq
54
54
  masster/study/defaults/integrate_def.py,sha256=Vf4SAzdBfnsSZ3IRaF0qZvWu3gMDPHdgPfMYoPKeWv8,7246
55
55
  masster/study/defaults/merge_def.py,sha256=EBsKE3hsAkTEzN9dpdRD5W3_suTKy_WZ_96rwS0uBuE,8572
56
56
  masster/study/defaults/study_def.py,sha256=d8mQWIpvWEWI8grPTAcQa4jKTG7QrM98RRgHZVoh134,9519
57
- masster-0.3.12.dist-info/METADATA,sha256=gb3nbkBNDa0TARJGbCHRjoOym_L4bMX6mT6415BBvDg,44293
58
- masster-0.3.12.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
59
- masster-0.3.12.dist-info/entry_points.txt,sha256=ZHguQ_vPmdbpqq2uGtmEOLJfgP-DQ1T0c07Lxh30wc8,58
60
- masster-0.3.12.dist-info/licenses/LICENSE,sha256=bx5iLIKjgAdYQ7sISn7DsfHRKkoCUm1154sJJKhgqnU,35184
61
- masster-0.3.12.dist-info/RECORD,,
57
+ masster-0.3.13.dist-info/METADATA,sha256=3UgZrlVxDb1GIwA_8y6-LW0407iuS6s9RNBpOpMmijE,44293
58
+ masster-0.3.13.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
59
+ masster-0.3.13.dist-info/entry_points.txt,sha256=ZHguQ_vPmdbpqq2uGtmEOLJfgP-DQ1T0c07Lxh30wc8,58
60
+ masster-0.3.13.dist-info/licenses/LICENSE,sha256=bx5iLIKjgAdYQ7sISn7DsfHRKkoCUm1154sJJKhgqnU,35184
61
+ masster-0.3.13.dist-info/RECORD,,