2016-05-07 6 views
0

Ich habe eine Reihe von numpy 2d Arrays, die alle eine Achse gemeinsam haben, möchte ich sie in der gleichen 'Tabelle' aufstellen.Kombinieren von verschiedenen Daten, die 1 Achse gemeinsam python numpy haben, schreiben in Tabelle

a=np.loadtxt('file',unpack=True,dtype='str') 
b=np.loadtxt('file',unpack=True,dtype='str') 
c=np.loadtxt('file',unpack=True,dtype='str') 
d=np.loadtxt('file',unpack=True,dtype='str') 

aus dieser Arrays a [0], b [0], c [0], D [0] sind alle Zeiten und ein [1], b [1], c [1] und d [1] und Werte verschiedener Dinge. Ich möchte sie alle auf die gleiche Achse setzen. Ich möchte auch Nan-Werte eingeben, in denen keine Werte von den Arrays sind. Zum Beispiel werde ich am Ende einen Tisch wie den folgenden bekommen. Gibt es einen einfachen Weg, dies in Python zu tun? Das Problem ist, a, b, c, d sind alle unterschiedliche Längen, also muss ich NANS setzen, wo einige der Variablen keine Werte haben, Zeit muss auch von allen 4 Variablen erzeugt werden.

time a b  c d 
t1 Nan value nan nan 
t2 value nan nan nan 
t3 value nan value nan 
t4 nan nan value nan 
t5 value nan value value 
t6 nan nan value value 
t7 nan nan nan value 
t8 nan nan value nan 
t9 nan nan value value 

Antwort

0

Pandas für Matrix-Operation möglicherweise nicht schnell sein, aber es ist gut für die Erzeugung "Tisch":

import pandas as pd 

d = {'time'= a[0],'a':a[1],'b':b[1],'c':c[1],'d':d[1]} # give column name to each column where your numpy arrays have same axis 
df=pd.DataFrame(data=d) 

Ich denke, Pandas Nan, wo Daten fehlt

automatisch füllt
Verwandte Themen