Я хотел бы ресэмплировать этот DataFrame:Resample на основе значения столбца
import pandas as pd
from StringIO import StringIO
mycsv = StringIO("""
time;A;B
2015-12-06T22:00:00.000000Z;1.08703;1.1
2015-12-07T22:00:05.000000Z;1.08682;2.1
2015-12-07T22:00:05.000000Z;1.08682;3.5
2015-12-08T22:01:20.000000Z;1.08683;5.8
2015-12-09T22:01:30.000000Z;1.08676;6.1
2015-12-10T00:03:00.000000Z;1.08675;7.3
2015-12-06T22:03:50.000000Z;1.08676;12.0
""")
df = pd.read_csv(mycsv, delimiter=';', parse_dates=True, index_col='time', header=0)
каждый раз, когда последнее значение столбца только < = 4 * к, где к целое, то есть я хочу этот результат:
time;A;B
2015-12-07T22:00:05.000000Z;1.08682;3.5 # 3.5 is the last value <= 4.0
2015-12-10T00:03:00.000000Z;1.08675;7.3 # 7.3 is the last vakue <= 8.0
2015-12-06T22:03:50.000000Z;1.08676;12.0 # 1é.0 is the last value <= 12.0
Как это сделать с пандами, т.е. частоты дискретизации на основе состояния на колонке?
Каков ваш метод передискретизации? Похоже, вы просто берете последнюю строку, которая соответствует вашему критерию, и ничего не делает с другими строками, которые соответствуют критерию. – Evert
@Evert yes Я хочу сохранить номер строки: 'max {i такой, что B [i] <= 4}', 'max {i такой, что B [i] <= 8}', 'max {i такой, что B [i] <= 12} 'и т. д. – Basj
Не слишком Panda-esque, но цикл над' k' на самом деле звучит проще всего. – Evert