Mercurial > repos > greg > validate_affy_metadata
comparison validate_affy_metadata.py @ 2:72e79ed7ca41 draft
Uploaded
| author | greg |
|---|---|
| date | Tue, 17 Sep 2019 12:45:57 -0400 |
| parents | b5f5c3d0f349 |
| children | 7f95329251f0 |
comparison
equal
deleted
inserted
replaced
| 1:b5f5c3d0f349 | 2:72e79ed7ca41 |
|---|---|
| 61 elif len(email) > EMAIL_MAX_LEN: | 61 elif len(email) > EMAIL_MAX_LEN: |
| 62 return add_error_msg(accumulated_msgs, "Line %d contains an email address (%) that is longer than the maximum length, %d characters." % (line_no, email)) | 62 return add_error_msg(accumulated_msgs, "Line %d contains an email address (%) that is longer than the maximum length, %d characters." % (line_no, email)) |
| 63 return accumulated_msgs | 63 return accumulated_msgs |
| 64 | 64 |
| 65 | 65 |
| 66 def validate_integer(line_no, integer_string, column, accumulated_msgs): | |
| 67 try: | |
| 68 integer_string.isdigit() | |
| 69 return accumulated_msgs | |
| 70 except Exception: | |
| 71 return add_error_msg(accumulated_msgs, "Line %d contains an incorrect integer value (%s) for column %s." % (line_no, integer_string, column)) | |
| 72 | |
| 73 | |
| 66 accumulated_msgs = "" | 74 accumulated_msgs = "" |
| 67 # Parse the input file, skipping the header, and validating | 75 # Parse the input file, skipping the header, and validating |
| 68 # that each data line consists of 31 comma-separated items. | 76 # that each data line consists of 31 comma-separated items. |
| 69 with open(args.input, "r") as ih: | 77 with open(args.input, "r") as ih: |
| 70 for i, line in enumerate(ih): | 78 for i, line in enumerate(ih): |
| 105 accumulated_msgs = validate_decimal(line_no, longitude, "longitude", accumulated_msgs) | 113 accumulated_msgs = validate_decimal(line_no, longitude, "longitude", accumulated_msgs) |
| 106 # Optional. | 114 # Optional. |
| 107 geographic_origin = items[8] | 115 geographic_origin = items[8] |
| 108 # Optional. | 116 # Optional. |
| 109 colony_location = items[9] | 117 colony_location = items[9] |
| 110 # Optional. | |
| 111 depth = items[10] | 118 depth = items[10] |
| 119 # If depth has a value, then it must be integer. | |
| 120 if len(depth) > 0: | |
| 121 accumulated_msgs = validate_integer(line_no, depth, "depth", accumulated_msgs) | |
| 112 # Optional. | 122 # Optional. |
| 113 disease_resist = items[11] | 123 disease_resist = items[11] |
| 114 # Optional. | 124 # Optional. |
| 115 bleach_resist = items[12] | 125 bleach_resist = items[12] |
| 116 # Optional. | 126 # Optional. |
