aboutsummaryrefslogtreecommitdiff
path: root/examples/py-machine-learning/sklearn-random-forest.py
diff options
context:
space:
mode:
Diffstat (limited to 'examples/py-machine-learning/sklearn-random-forest.py')
-rwxr-xr-xexamples/py-machine-learning/sklearn-random-forest.py17
1 files changed, 15 insertions, 2 deletions
diff --git a/examples/py-machine-learning/sklearn-random-forest.py b/examples/py-machine-learning/sklearn-random-forest.py
index 9103bb427..275376ba2 100755
--- a/examples/py-machine-learning/sklearn-random-forest.py
+++ b/examples/py-machine-learning/sklearn-random-forest.py
@@ -168,6 +168,9 @@ def onJsonLineRecvd(json_dict, instance, current_flow, global_user_data):
return True
def isProtoClass(proto_class, line):
+ if type(proto_class) != list or type(line) != str:
+ raise TypeError('Invalid type: {}/{}.'.format(type(proto_class), type(line)))
+
s = line.lower()
for x in range(len(proto_class)):
@@ -278,9 +281,19 @@ if __name__ == '__main__':
for line in reader:
try:
X += getRelevantFeaturesCSV(line)
- y += [isProtoClass(args.proto_class, line['proto'])]
except RuntimeError as err:
- print('Error: `{}\'\non line {}: {}'.format(err, reader.line_num - 1, line))
+ print('Runtime Error: `{}\'\non line {}: {}'.format(err, reader.line_num - 1, line))
+ continue
+ except TypeError as err:
+ print('Type Error: `{}\'\non line {}: {}'.format(err, reader.line_num - 1, line))
+ continue
+
+ try:
+ y += [isProtoClass(args.proto_class, line['proto'])]
+ except TypeError as err:
+ X.pop()
+ print('Type Error: `{}\'\non line {}: {}'.format(err, reader.line_num - 1, line))
+ continue
sys.stderr.write('CSV data set contains {} entries.\n'.format(len(X)))