deprecation error in sklearn about empty array without any empty array in my code : <p>I am just playing around encoding and decoding but I get this error from sklearn:</p>

<blockquote>
  <p>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 <code>array.size &gt; 0</code> to check that an array is not empty.</p>
</blockquote>

<p>Here is the full code, you can run it yourself in python 3+</p>

<p>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.</p>

<pre><code>### 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, "--&gt;", 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))
</code></pre>
