Простой Импутер не может вменять по столбцу - PullRequest
0 голосов
/ 26 февраля 2020

У меня есть X_train, который формирует (14599, 13), я пытаюсь приписать NaN медиану столбца, но каким-то образом это влечет за собой ошибку строки, потому что в строке есть дата, отличная от целочисленных значений. Я уже посмотрел, если SimpleImputer имеет параметр оси, но не смог найти, что он существует. Как это решить?

import pandas as pd
import seaborn as sns
import numpy as np
import matplotlib.pyplot as plt
from sklearn.impute import SimpleImputer
from sklearn.model_selection import train_test_split


plt.close('all')
avo_sales = pd.read_csv('avocados.csv')
avo_sales.rename(columns = {'4046':'small PLU sold',
                            '4225':'large PLU sold',
                            '4770':'xlarge PLU sold'},
                 inplace= True)
avo_sales.columns = avo_sales.columns.str.replace(' ','')

plt.scatter(avo_sales.Date,avo_sales.TotalBags)

x = np.array(avo_sales.drop(['TotalBags'],1))
y = np.array(avo_sales.TotalBags)

X_train, X_test, y_train, y_test = train_test_split(x, y, test_size=0.2)

imp = SimpleImputer(strategy='median')
X_train = imp.fit_transform(X_train)

на выходе

ValueError: Cannot use median strategy with non-numeric data:
could not convert string to float: '12/31/2017'
...