# ValueError: Unknown label type: 'unknown'

The**Unknown label type: 'unknown'**error raised related to the

**Y values**that you use in

**scikit-learn**. There is a mismatch in "What you can pass" Vs. "What you are actually passing". Say between Array Vs. DataFrame or 1D list Vs. 2D list. This means that the

**scikit-learn library**is not able to recognize what type of problem you want to solve (

**regression**or

**classification**). Specifically, what type of data is in your

**Y variable**? Scikit-learn expects you to pass label-like: integer, string, etc. and you providing

**'continuous'**(probably are float numbers) data.

## Solutions:

- Group your
**Y values**into bins (classes for example: 0, 1, 2, 3) and apply**classification modeling**to your data. - In most cases, your
**Y values**are of type object, so sklearn cannot recognize its type. Add the line**y=y.astype('int')**before you pass the variable into the classifier. - When you are passing
**Y values**to rf.fit(X,Y), it expects**Y values**to be 1D list. Slicing the Panda frame always result in a 2D list. So, you should convert the 2D list provided by pandas DataFrame to a 1D list as expected by**fit() function**. - If you prefer your predictions to have continuous values, You need to use the
**regression machine learning methods**(eg. RandomForestRegressor) to predict**Y values**.

**Related Topics**

- ImportError: No module named pandas
- What is SettingWithCopyWarning?
- UnicodeDecodeError while reading CSV file
- How to fix CParserError: Error tokenizing data
- ValueError: cannot reindex from a duplicate axis
- How to fix "Unnamed: 0" column in a pandas DataFrame
- ValueError: cannot convert float NaN to integer
- ValueError: Length of values does not match length of index
- ValueError: The truth value of an array with more than..