![](/img/trans.png)
[英]AttributeError - 'numpy.ndarray' object has no attribute 'drop'
[英]'numpy.ndarray' object has no attribute 'drop'
我有一個包含四個輸入的數據集,名為 X1、X2、X3、X4。 在這里,我創建了 lstm 模型,以使用四個輸入的先前值預測下一個 X1 值。
在這里,我將時間更改為分鍾,然后將時間設置為索引。
然后我創建了 x_train、x_test、y_test 和 y_train。 然后我想減少 x_train 和 x_test 的時間。
我使用了代碼:
data= pd.DataFrame(data,columns=['X1','X2','X3','X4'])
pd.options.display.float_format = '{:,.0f}'.format
print(data)
數據:
y=data['X1'].astype(int)
cols=['X1', 'X2', 'X3','X4']
x=data[cols].astype(int)
data=data.values
scaler_x = preprocessing.MinMaxScaler(feature_range =(0, 1))
x = np.array(x).reshape ((len(x),4 ))
x = scaler_x.fit_transform(x)
scaler_y = preprocessing.MinMaxScaler(feature_range =(0, 1))
y = np.array(y).reshape ((len(y), 1))
y = scaler_y.fit_transform(y)
train_end = 80
x_train=x[0: train_end ,]
x_test=x[train_end +1: ,]
y_train=y[0: train_end]
y_test=y[train_end +1:]
x_train=x_train.reshape(x_train.shape +(1,))
x_test=x_test.reshape(x_test.shape + (1,))
x_train = x_train.drop('time', axis=1)
x_test = x_test.drop('time', axis=1)
然后錯誤: 'numpy.ndarray' object has no attribute 'drop'
任何人都可以幫我解決這個錯誤嗎?
由於您提取了 Pandas 數據幀的值,因此您的數據已轉換為 NumPy 數組,因此列名已被刪除。 時間列是數據的第一列,因此您真正需要做的就是對其進行索引,以便提取第二列及以后的列:
x_time_train = x_train[:, 0]
x_train = x_train[:, 1:]
x_time_test = x_test[:, 0]
x_test = x_test[:, 1:]
請注意,我已將訓練數據集和測試數據集的時間值分開,因為您需要它們進行繪圖。
X_train 是一個數組而不是一個數據框您需要知道要刪除的列的位置
np.delete(X_train, [index_to_drop], 1)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.