2015-06-13 65 views
1

要避免以下錯誤的熊貓數據幀不,我想與Unix Time來取代我的數據幀的任意整數:查找所有值在某型

ValueError: mixed datetimes and integers in passed array

在Excel文件,我的一小部分閱讀,我知道出現的整數是0.但是,如果有多個不同的整數呢?或者如果有多個dtypes?我怎樣才能輕鬆取代任何非日期時間與代表日期時間?

這適用於更換0的簡單情況:

for col_name in time_columns: 
    time_col = data[col_name] 
    if time_col.dtypes is np.dtype('object'): 
     time_col.replace(to_replace=0, value=epoch, inplace=True) 
    time_col = pd.DatetimeIndex(time_col).astype(np.int64)/10**6 
    data[col_name] = time_col 

其中

epoch = datetime.datetime.utcfromtimestamp(0) 

回答