我是深度学习框架,熊猫,numpy和python的初学者。我目前正在使用keras后端tensorflow训练我的模型。当我使用熊猫保存重量值进行csv转换时,结果如图Pandas to csv所示。重量值在一栏中。我检查了体重类型及其清单。
我如何用一个Excel单元格一个值将熊猫保存到csv?
这是我用来将大熊猫保存到csv的代码
weight = model.get_weights()
np.set_printoptions(threshold=np.inf)
df = pd.DataFrame(weight)
df.to_csv("./Result/w_mlp_p_nodropout_full.csv", index=False)
我尝试用numpy节省重量到txt并将txt转换成csv,它成功了。 numpy to txt txt to csv
这是我从numpy到txt代码
np.savetxt('./weight.txt', weight, fmt='%s' , delimiter=',')
答案 0 :(得分:0)
all_weights = np.zeros(0)
for layer_w in model.get_weights():
all_weights = np.append(all_weights, layer_w.reshape(-1))
np.savetxt("weight.csv", all_weights, delimiter=",")
来自docs:
get_weights():以Numpy列表形式返回图层的权重 数组。
对于模型中的每个图层,您将获得一个基于图层类型的不同尺寸的numpy数组。您将必须收集所有重量并将其压平,以使它们全部成为一栏。
等效的Oneliner:
np.savetxt("weight.csv",
np.concatenate(list(map(lambda x: x.reshape(-1), model.get_weights())), axis=0 ),
delimiter=",")
答案 1 :(得分:0)
Excel在不同国家/地区将逗号的含义不同。因此,您可以在excel设置中将逗号设置为单元格分隔符,也可以将数据保存为制表符分隔值格式,即在代码中设置sep ='\ t':
my_data.to_csv(file_name, sep='\t')