Dict de preenchimento com valores de NA para permitir a conversão em dataframe de pandas

Eu tenho um ditado que contém valores calculados em diferentes intervalos de tempo, o que significa que eles começam em datas diferentes. Por exemplo, os dados que tenho podem se parecer com o seguinte:

Date      col1    col2    col3    col4    col5
01-01-15  5       12      1      -15      10
01-02-15  7       0       9       11      7
01-03-15          6       1       2       18
01-04-15          9       8       10
01-05-15         -4               7
01-06-15         -11             -1
01-07-15          6               

Onde cada cabeçalho é a chave e cada coluna de valores é o valor de cada chave (estou usando umdefaultdict(list) por esta). Quando tento correrpd.DataFrame.from_dict(d) É compreensível que eu receba um erro informando que todas as matrizes devem ter o mesmo comprimento. Existe uma maneira fácil / trivial de preencher ou preencher os números para que a saída acabe sendo o seguinte quadro de dados?

Date      col1    col2    col3    col4    col5
01-01-15  5       12      1      -15      10
01-02-15  7       0       9       11      7
01-03-15  NaN     6       1       2       18
01-04-15  NaN     9       8       10      NaN
01-05-15  NaN    -4       NaN     7       NaN
01-06-15  NaN    -11      NaN    -1       NaN
01-07-15  NaN     6       NaN     NaN     NaN

Ou terei que fazer isso manualmente com cada lista?

Aqui está o código para recriar o dicionário:

import pandas as pd
from collections import defaultdict

d = defaultdict(list)
d["Date"].extend([
    "01-01-15", 
    "01-02-15", 
    "01-03-15", 
    "01-04-15", 
    "01-05-15",
    "01-06-15",
    "01-07-15"
]
d["col1"].extend([5, 7])
d["col2"].extend([12, 0, 6, 9, -4, -11, 6])
d["col3"].extend([1, 9, 1, 8])
d["col4"].extend([-15, 11, 2, 10, 7, -1])
d["col5"].extend([10, 7, 18])

questionAnswers(4)

yourAnswerToTheQuestion