# Check if a field is arrayed # i.e. there can be multiple values # selected for it. field_array_max = r.get('array_max') if field_array_max == 0: field_array_max = 1 for i in range(field_instance_max): for a in range(field_array_max): field_canonical_name = helpers.gen_field_name(field_id, i, a, args.human) dummy_values = helpers.gen_dummy_data_for_field( field_id, TOTAL_PATIENTS) if args.human: dummy_values = helpers.decode_values(dummy_values, field_id) if args.jitter > 0: dummy_values = helpers.insert_missingness( dummy_values, args.jitter) df_output[field_canonical_name] = dummy_values df_output.to_csv(args.out, index=False) print("Wrote %s shape (%d,%d)." % ( args.out, df_output.shape[0], df_output.shape[1]))
def test_missing(): a = np.random.randint(0, 100, 100).tolist() new_a = helpers.insert_missingness(a, 10) assert pytest.approx(new_a.count(np.nan), 2) == 10