I am just playing around encoding and decoding but I get this error from sklearn:
Warning (from warnings module): File "C:\Python36\lib\site-packages\sklearn\preprocessing\label.py", line 151 if diff: DeprecationWarning: The truth value of an empty array is ambiguous. Returning False, but in future this will result in an error. Use
array.size > 0
to check that an array is not empty.
Here is the full code, you can run it yourself in python 3+
My question is why is it saying I use an empty array as I clearly don't in my code, thanks for taking your time to answer my question.
### label encoding ### import numpy as np from sklearn import preprocessing # Sample input labels input_labels = ["red", "black", "red", "green",\ "black", "yellow", "white"] # Create label encoder abd fit the label encoder = preprocessing.LabelEncoder() encoder.fit(input_labels) # Print the mapping print("\nLabel mapping:") for i, item in enumerate(encoder.classes_): print(item, "-->", i) # Encode a set of labels using encoder test_labels = ["green", "red", "black"] encoded_values = encoder.transform(test_labels) print("\nLabels =", test_labels) print("Encoded values =", list(encoded_values)) # Decode a set of values using the encoder encoded_values = [3, 0, 4, 1] decoded_list = encoder.inverse_transform(encoded_values) print("\nEncoded values =", encoded_values) print("Decoded labels=", list(decoded_list))