У меня есть DataFrame, который имеет две столбцы Timestamp, один из которых используется как индекс для повторной выборки, а другой остается в виде столбца. Если я переконвертирую DataFrame, то оставшаяся в качестве столбца будет отброшена. Я хотел бы, чтобы быть преобразован, как если бы это был числовой столбец (что это на самом деле):Pandas падает столбцы метки времени в resample
import numpy as np
import pandas as pd
init_time=pd.date_range(start='2010-01-01 00:00', end='2010-01-05 00:00', freq='12H')
valid_time=pd.date_range(start='2010-01-01 00:00', end='2010-01-05 00:00', freq='12H')
data = np.random.random(len(valid_time))
frame = pd.DataFrame(index=valid_time, data=data)
frame['init_time'] = init_time
DataFrame имеет индекс, 1 числовой столбец и столбец один Timestamp
0 init_time
2010-01-01 00:00:00 0.869667 2010-01-01 00:00:00
2010-01-01 12:00:00 0.225805 2010-01-01 12:00:00
2010-01-02 00:00:00 0.348080 2010-01-02 00:00:00
2010-01-02 12:00:00 0.761399 2010-01-02 12:00:00
2010-01-03 00:00:00 0.645069 2010-01-03 00:00:00
2010-01-03 12:00:00 0.133111 2010-01-03 12:00:00
2010-01-04 00:00:00 0.314302 2010-01-04 00:00:00
2010-01-04 12:00:00 0.130491 2010-01-04 12:00:00
2010-01-05 00:00:00 0.621703 2010-01-05 00:00:00
Теперь RESAMPLE ежедневно:
daily = frame.resample('D', how='mean')
0
2010-01-01 0.547736
2010-01-02 0.554740
2010-01-03 0.389090
2010-01-04 0.222396
2010-01-05 0.621703
Мой init_time
колонка уронили. Я мог бы сначала преобразовать его в исходный целочисленный столбец, но есть ли более простой способ?
Спасибо, что по существу обходной путь я использую. Интересно, есть ли какой-либо аппетит для опционального задания функции передискретизации для каждого столбца в Pandas? – samwise
вы можете сделать это через группу с помощью TimeGrouper. Я полагаю, вы могли бы иметь такую подпись, как: '' df.resamplee (freq .... how = {columns: func .....}, how_default = default_function) '' для переопределения по умолчанию и по умолчанию. Pls пишет о проблеме на github для этого. (и PR будет еще лучше!) – Jeff
Хорошо, попробуй. Может быть, мой первый PR. – samwise