我在嵌套循环中有一个循环,最后生成6个字典。每个字典都有相同的键但不同的值,我想在每次迭代结束时将字典附加到相同的数据帧,但它总是失败。
在结束时,我想有一个表6列加上一个索引,其中持有键。
这就是我想做的事情背后的想法:
dictionary = dict()
for i in blahh:
dictionary[i] = dict(zip(blahh['x'][i], blahh['y'][i]))
df = pd.DataFrame(dictionary)
df_final = pd.concat([dictionary, df])
我得到错误:
cannot concatenate object of type '<class 'dict'>'; only series and dataframe objs are valid
我在下面包含了一个循环:
letts = [ ('a','b','c'),('e','f','g'),('h','i','j'),('k','l','m'),('n','o','p')]
numns = [(1,2,3),(4,5,6),(7,8,9),(10,11,12),(13,14,15)]
dictionary = dict()
for i in letts:
for j in numns:
dictionary = dict(zip(i, j))
应该可以:
dictionary = dict()
for i in blahh:
dictionary[i] = dict(zip(blahh['x'][i], blahh['y'][i]))
df = pd.DataFrame(dictionary)
你可以直接将字典转换为DataFrame,但是你必须在循环之外进行,否则你会一直覆盖你的DataFrame。注意不同的缩进