2016-05-13 62 views
0

我有一个这样的结果列表[1.0,3.0,5.0,2.0,0.3,1.0,1.6,0.6,0.2,0.5,1.0,0.4,0.5,1.5,2.5,1.0]。如何从结果列表创建数据框?

但我需要这个数据,因为下面的数据框跟随(我需要为真正长的表做这个)。

 a b  c  d 
0 1.0 0.3 0.2 0.5 
1 3.0 1.0 0.5 1.5 
2 5.0 1.6 1.0 2.5 
3 2.0 0.6 0.5 1.0 

这是我已经得到了数据的方式。你能帮我吗?

data1 = {"a":[1.,3.,5.,2.], 
     "b":[4.,8.,3.,7.], 
     "c":[5.,45.,67.,34]} 

df = pd.DataFrame(data1) 

data2 =[] 

for index, row in df.iterrows(): 
    constante = row[0] 

    for index, celda in df.iterrows(): 
     hey = celda[0]/constante 

     data2.append(hey) 

print data2 

回答

3

你可以将它转换为numpy的阵列和重塑:

lst = [1.0, 3.0, 5.0, 2.0, 0.3, 1.0, 1.6, 0.6, 0.2, 0.5, 1.0, 0.4, 0.5, 1.5, 2.5, 1.0] 

pd.DataFrame(np.array(lst).reshape(4, 4).T, columns = list("abcd")) 
Out[94]: 
    a b c d 
0 1.0 0.3 0.2 0.5 
1 3.0 1.0 0.5 1.5 
2 5.0 1.6 1.0 2.5 
3 2.0 0.6 0.4 1.0