2016-04-05 47 views
0
pieces_v = [[sensor_values[i: i + 6]] for i in xrange(4)] 

Yani pieces_v şuna benzer:Pandalar Dataframe

[[0 -60.244999 
1 -51.290001 
2 -52.727001 
3 -60.962002 
4 -51.230000 
5 -58.717999 
Name: -64.251, dtype: float32], [1 -51.290001 
2 -52.727001 
3 -60.962002 
4 -51.230000 
5 -58.717999 
6 -62.112999 
Name: -64.251, dtype: float32], [2 -52.727001 
3 -60.962002 
4 -51.230000 
5 -58.717999 
6 -62.112999 
7 -64.460999 
Name: -64.251, dtype: float32], [3 -60.962002 
4 -51.230000 
5 -58.717999 
6 -62.112999 
7 -64.460999 
8 -44.680000 
Name: -64.251, dtype: float32]] 

Şimdi bu verilerin birleştirilmiş dataframe kurmak istiyorum, ama gördüğünüz gibi küçük bir sorun ile var kodum, sütun başlığı içermiyor. Bunu ne düzeltir?

for y in xrange(7): 
    df = pd.DataFrame({ y : pd.Series(sensor_values[i:i+6] for i in xrange(7)) }) 

(Ben 'sözlük dataframe' oluşturmaya çalışıyorum tahmin devam etmek yol değildir?)

cevap

0

Sana concat kullanabilirsiniz düşünüyorum:

print pd.concat([pd.Series(sensor_values[i: i + 6].values) for i in xrange(4)], axis=1) 

      0   1   2   3 
0 -60.244999 -51.290001 -52.727001 -60.962002 
1 -51.290001 -52.727001 -60.962002 -51.230000 
2 -52.727001 -60.962002 -51.230000 -58.717999 
3 -60.962002 -51.230000 -58.717999 -62.112999 
4 -51.230000 -58.717999 -62.112999 -64.460999 
5 -58.717999 -62.112999 -64.460999 -44.680000 

print pd.concat([pd.Series(sensor_values[i: i + 6].values) for i in xrange(4)], 
       axis=1, 
       keys=['a','b','c','d']) 

      a   b   c   d 
0 -60.244999 -51.290001 -52.727001 -60.962002 
1 -51.290001 -52.727001 -60.962002 -51.230000 
2 -52.727001 -60.962002 -51.230000 -58.717999 
3 -60.962002 -51.230000 -58.717999 -62.112999 
4 -51.230000 -58.717999 -62.112999 -64.460999 
5 -58.717999 -62.112999 -64.460999 -44.680000 

Veya:

print pd.concat([pd.Series(sensor_values[i: i + 6]) for i in xrange(4)], 
       axis=1, 
       keys=['a','b','c','d']) 

      a   b   c   d 
0 -60.244999  NaN  NaN  NaN 
1 -51.290001 -51.290001  NaN  NaN 
2 -52.727001 -52.727001 -52.727001  NaN 
3 -60.962002 -60.962002 -60.962002 -60.962002 
4 -51.230000 -51.230000 -51.230000 -51.230000 
5 -58.717999 -58.717999 -58.717999 -58.717999 
6  NaN -62.112999 -62.112999 -62.112999 
7  NaN  NaN -64.460999 -64.460999 
8  NaN  NaN  NaN -44.680000