| def merge_njd_marine_features(njd_features, marine_results): | |
| features = [] | |
| marine_accs = marine_results["accent_status"] | |
| marine_chain_flags = marine_results["accent_phrase_boundary"] | |
| assert ( | |
| len(njd_features) == len(marine_accs) == len(marine_chain_flags) | |
| ), "Invalid sequence sizes in njd_results, marine_results" | |
| for node_index, njd_feature in enumerate(njd_features): | |
| _feature = {} | |
| for feature_key in njd_feature.keys(): | |
| if feature_key == "acc": | |
| _feature["acc"] = int(marine_accs[node_index]) | |
| elif feature_key == "chain_flag": | |
| _feature[feature_key] = int(marine_chain_flags[node_index]) | |
| else: | |
| _feature[feature_key] = njd_feature[feature_key] | |
| features.append(_feature) | |
| return features | |