【发布时间】:2018-01-22 20:14:09
【问题描述】:
我有一个Pandas dataframe,我从中选择了一些列并创建了两个长度相同的数据框:
series1 = df[['VAL1', 'VAL2', 'VAL3', 'VAL4', 'VAL5','VAL6']]
series2 = df[['OTHER_VAL1', 'OTHER_VAL2', 'OTHER_VAL3', 'OTHER_VAL4', 'OTHER_VAL5','OTHER_VAL6']]
之后,我从每个 DataFrame 创建两个 numpy 数组
series_1_np = series1.values
series_2_np = series2.values
两个数组的形状都是这样的:
(69193, 6)
我想将我的series1 重塑为:
(69193, 6, 6)
并希望将series2 中的每个值添加到新的扩展维度。
我问它是因为我想创建一个Conv1D keras 模型。现在我正在这样做:
我在series1 中创建了一个新维度:
series1 = np.expand_dims(series1, axis=-1)
然后我创建我的模型:
model = Sequential()
model.add(Conv1D(filters=2 , kernel_size=3, strides=1, input_shape=(6, 1)) )
...
...
它正在运行,这没有任何问题。但是,我的 series2 中有另一个功能集,并想将其发送到我的模型输入。
我该怎么做?抱歉,我什至无法启动它。
谢谢!
谢谢!
【问题讨论】:
-
“将 series2 中的每个值添加到新的扩展维度”是什么意思?您的意思是希望每个
series1[:,:,i]都等于series1[:,:] + series2[:, i]? -
您在两个数组中有
2 x (69193 * 6)项。您想要的新形状有(69196 * 6 * 6)项。你确定那是你想要的吗?也许解释你想要做什么。看看Joining Arrays -
你必须想象一个有 12 列和 69193 行的数据框。我想从中创建一个 numpy 数组,因为它可能是 Conv1d Keras 模型的输入。
-
对不起,我要更新我的问题..