将字典中的数组转换为数组列表
convert arrays in dictionary into list of arrays
我有一本名为 'voltage' 的字典,其中有 206 个条目,如图所示。每个项目都是 (25;3;1) 的数组。我想将字典转换为数组列表并将其作为输入以使用 model.fit()
训练模型
我尝试将 'dictionary with arrays'(电压)作为模型的输入。但它给出了以下错误。
model.fit(x=voltage, y=output, steps_per_epoch=None, epochs=1000)
ValueError: No data provided for "input_1". Need data for each key in: ['input_1']
后来我尝试将 'dictionary with arrays' 转换为 'list of arrays'
temp = []
input= []
for key, value in voltage:
temp = [key,value]
input.append(temp)
ValueError Traceback (most recent call last)
<ipython-input-26-8b0eb6392467> in <module>
2 input= []
3
----> 4 for key, value in voltage:
5 temp = [key,value]
6 input.append(temp)
ValueError: not enough values to unpack (expected 2, got 1)
我试过了,但出现值错误。
请帮我解决这个问题。
谢谢:)
已编辑
正如 Geethesh 所说,我尝试了这段代码,它已将我的字典转换为数组列表,但形状很奇怪。最初,我字典中的项目的形状是 (25,3,1)
for value, key in voltage.items():
temp = [key,value]
input.append(temp)
np.shape(input)
This gives me a shape of (1, 206, 2)
但我需要 (206, 25, 3, 1) 的形状。包含 206 个样本的列表,每个样本的大小为 (25,3,1)。
如何更改列表的形状??
你必须使用
for value, key in voltage.items():
input.append(value)
您也可以使用列表理解
input= [value for value, key in voltage.items()]
我有一本名为 'voltage' 的字典,其中有 206 个条目,如图所示。每个项目都是 (25;3;1) 的数组。我想将字典转换为数组列表并将其作为输入以使用 model.fit()
训练模型我尝试将 'dictionary with arrays'(电压)作为模型的输入。但它给出了以下错误。
model.fit(x=voltage, y=output, steps_per_epoch=None, epochs=1000)
ValueError: No data provided for "input_1". Need data for each key in: ['input_1']
后来我尝试将 'dictionary with arrays' 转换为 'list of arrays'
temp = []
input= []
for key, value in voltage:
temp = [key,value]
input.append(temp)
ValueError Traceback (most recent call last)
<ipython-input-26-8b0eb6392467> in <module>
2 input= []
3
----> 4 for key, value in voltage:
5 temp = [key,value]
6 input.append(temp)
ValueError: not enough values to unpack (expected 2, got 1)
我试过了,但出现值错误。
请帮我解决这个问题。
谢谢:)
已编辑 正如 Geethesh 所说,我尝试了这段代码,它已将我的字典转换为数组列表,但形状很奇怪。最初,我字典中的项目的形状是 (25,3,1)
for value, key in voltage.items():
temp = [key,value]
input.append(temp)
np.shape(input)
This gives me a shape of (1, 206, 2)
但我需要 (206, 25, 3, 1) 的形状。包含 206 个样本的列表,每个样本的大小为 (25,3,1)。
如何更改列表的形状??
你必须使用
for value, key in voltage.items():
input.append(value)
您也可以使用列表理解
input= [value for value, key in voltage.items()]