2017-02-10 71 views
5

我有數據在Python字典一樣:分配D型與from_dict

data = {u'01-01-2017 22:34:43:871': [u'88.49197', u'valid'], 
     u'01-01-2017 11:23:43:803': [u'88.49486', u'valid'], 
     u'02-01-2017 03:11:43:898': [u'88.49773', u'valid'], 
     u'01-01-2017 13:54:43:819': [u'88.50205', u'valid']} 

我可以將其轉換爲大熊貓數據幀具有:

data = pandas.DataFrame.from_dict(data, orient='index') 

,但我不能夠使用D型參數的from_dict。我會將索引轉換爲類似第一列的datetime以浮動,並將第三列轉換爲字符串。

我曾嘗試:

pandas.DataFrame.from_dict((data.values()[0]), orient='index', 
               dtype={0: 'float', 1:'str'}) 

,但它不工作。

+0

你傳入'data'到'from_dict'構造函數,對吧?因爲它不會接受一個列表... –

+0

'pd.DataFrame(data).T'怎麼樣? – DyZ

+0

@ juanpa.arrivillaga:對不起,我從我的真實代碼中複製了一些有點不同的東西。修正:我通過一個字典 –

回答

2

這似乎是與一些大熊貓構造方法當前的一個問題:How to set dtypes by column in pandas DataFrame

,而不是使用dtype說法,鏈接.astype可以做的伎倆:

pandas.DataFrame.from_dict(data, orient='index').astype({0: float, 1:str}) 
+0

它會更好地在建設時間進行轉換。另外我還需要轉換索引。 –

+0

@RuggeroTurra是的,似乎有一個錯誤,所以這是一個解決方法。 –