File tree Expand file tree Collapse file tree 6 files changed +77
-34
lines changed
Expand file tree Collapse file tree 6 files changed +77
-34
lines changed Original file line number Diff line number Diff line change @@ -626,10 +626,16 @@ def _assemble_generated_quantities(self) -> None:
626626 order = 'F' ,
627627 )
628628 for chain in range (self .chains ):
629- * _ , draws = stancsv .parse_comments_header_and_draws (
630- self .runset .csv_files [chain ]
631- )
632- gq_sample [:, chain , :] = stancsv .csv_bytes_list_to_numpy (draws )
629+ csv_file = self .runset .csv_files [chain ]
630+ try :
631+ * _ , draws = stancsv .parse_comments_header_and_draws (
632+ self .runset .csv_files [chain ]
633+ )
634+ gq_sample [:, chain , :] = stancsv .csv_bytes_list_to_numpy (draws )
635+ except Exception as exc :
636+ raise ValueError (
637+ f"An error occurred when parsing Stan csv { csv_file } "
638+ ) from exc
633639 self ._draws = gq_sample
634640
635641 def _draws_start (self , inc_warmup : bool ) -> Tuple [int , int ]:
Original file line number Diff line number Diff line change @@ -86,10 +86,16 @@ def _assemble_draws(self) -> None:
8686 if self ._draws .shape != (0 ,):
8787 return
8888
89- * _ , draws = stancsv .parse_comments_header_and_draws (
90- self ._runset .csv_files [0 ]
91- )
92- self ._draws = stancsv .csv_bytes_list_to_numpy (draws )
89+ csv_file = self ._runset .csv_files [0 ]
90+ try :
91+ * _ , draws = stancsv .parse_comments_header_and_draws (
92+ self ._runset .csv_files [0 ]
93+ )
94+ self ._draws = stancsv .csv_bytes_list_to_numpy (draws )
95+ except Exception as exc :
96+ raise ValueError (
97+ f"An error occurred when parsing Stan csv { csv_file } "
98+ ) from exc
9399
94100 def stan_variable (self , var : str ) -> np .ndarray :
95101 """
Original file line number Diff line number Diff line change @@ -35,8 +35,15 @@ def __init__(
3535 def from_csv (
3636 cls , stan_csv : Union [str , os .PathLike , Iterator [bytes ]]
3737 ) -> 'InferenceMetadata' :
38- comments , header , _ = stancsv .parse_comments_header_and_draws (stan_csv )
39- return cls (stancsv .construct_config_header_dict (comments , header ))
38+ try :
39+ comments , header , _ = stancsv .parse_comments_header_and_draws (
40+ stan_csv
41+ )
42+ return cls (stancsv .construct_config_header_dict (comments , header ))
43+ except Exception as exc :
44+ raise ValueError (
45+ f"An error occurred when parsing Stan csv { stan_csv } "
46+ ) from exc
4047
4148 def __repr__ (self ) -> str :
4249 return 'Metadata:\n {}\n ' .format (self ._cmdstan_config )
Original file line number Diff line number Diff line change @@ -35,15 +35,24 @@ def __init__(self, runset: RunSet) -> None:
3535 ) # make the typechecker happy
3636 self ._save_iterations : bool = optimize_args .save_iterations
3737
38- (
39- comment_lines ,
40- header ,
41- draws_lines ,
42- ) = stancsv .parse_comments_header_and_draws (self .runset .csv_files [0 ])
43- self ._metadata = InferenceMetadata (
44- stancsv .construct_config_header_dict (comment_lines , header )
45- )
46- all_draws = stancsv .csv_bytes_list_to_numpy (draws_lines )
38+ csv_file = self .runset .csv_files [0 ]
39+ try :
40+ (
41+ comment_lines ,
42+ header ,
43+ draws_lines ,
44+ ) = stancsv .parse_comments_header_and_draws (
45+ self .runset .csv_files [0 ]
46+ )
47+ self ._metadata = InferenceMetadata (
48+ stancsv .construct_config_header_dict (comment_lines , header )
49+ )
50+ all_draws = stancsv .csv_bytes_list_to_numpy (draws_lines )
51+
52+ except Exception as exc :
53+ raise ValueError (
54+ f"An error occurred when parsing Stan csv { csv_file } "
55+ ) from exc
4756 self ._mle : np .ndarray = all_draws [- 1 ]
4857 if self ._save_iterations :
4958 self ._all_iters : np .ndarray = all_draws
Original file line number Diff line number Diff line change @@ -78,10 +78,16 @@ def _assemble_draws(self) -> None:
7878 if self ._draws .shape != (0 ,):
7979 return
8080
81- * _ , draws = stancsv .parse_comments_header_and_draws (
82- self ._runset .csv_files [0 ]
83- )
84- self ._draws = stancsv .csv_bytes_list_to_numpy (draws )
81+ csv_file = self ._runset .csv_files [0 ]
82+ try :
83+ * _ , draws = stancsv .parse_comments_header_and_draws (
84+ self ._runset .csv_files [0 ]
85+ )
86+ self ._draws = stancsv .csv_bytes_list_to_numpy (draws )
87+ except Exception as exc :
88+ raise ValueError (
89+ f"An error occurred when parsing Stan csv { csv_file } "
90+ ) from exc
8591
8692 def stan_variable (self , var : str ) -> np .ndarray :
8793 """
Original file line number Diff line number Diff line change @@ -29,18 +29,27 @@ def __init__(self, runset: RunSet) -> None:
2929 )
3030 self .runset = runset
3131
32- (
33- comment_lines ,
34- header ,
35- draw_lines ,
36- ) = stancsv .parse_comments_header_and_draws (self .runset .csv_files [0 ])
37-
38- self ._metadata = InferenceMetadata (
39- stancsv .construct_config_header_dict (comment_lines , header )
40- )
41- self ._eta = stancsv .parse_variational_eta (comment_lines )
32+ csv_file = self .runset .csv_files [0 ]
33+ try :
34+ (
35+ comment_lines ,
36+ header ,
37+ draw_lines ,
38+ ) = stancsv .parse_comments_header_and_draws (
39+ self .runset .csv_files [0 ]
40+ )
4241
43- draws_np = stancsv .csv_bytes_list_to_numpy (draw_lines )
42+ self ._metadata = InferenceMetadata (
43+ stancsv .construct_config_header_dict (comment_lines , header )
44+ )
45+ self ._eta = stancsv .parse_variational_eta (comment_lines )
46+
47+ draws_np = stancsv .csv_bytes_list_to_numpy (draw_lines )
48+
49+ except Exception as exc :
50+ raise ValueError (
51+ f"An error occurred when parsing Stan csv { csv_file } "
52+ ) from exc
4453 self ._variational_mean : np .ndarray = draws_np [0 ]
4554 self ._variational_sample : np .ndarray = draws_np [1 :]
4655
You can’t perform that action at this time.
0 commit comments