Да, используйте ALAssetsLibrary → теперь называется PHAsset.
Вы должны получить NSData gif, а не UIImage (потому что UIImage получит только первый кадр.)
Так что в принципе вы делаете что-то вроде этого:
Вы получаете актив
let requestOptions = PHImageRequestOptions()
requestOptions.isSynchronous = true // adjust the parameters as you wish
PHImageManager.default().requestImageData(for: asset, options: requestOptions, resultHandler: { (imageData, UTI, _, _) in
if let uti = UTI,let data = imageData ,
// you can also use UTI to make sure it's a gif
UTTypeConformsTo(uti as CFString, kUTTypeGIF) {
// save data here
}
})
Ресурс: PHAsset
Решение: используйте любой из следующих столбцов, чтобы получить точную повторную выборку:
df['4ma'] = df.resample('4T', base=2).mean().shift(1)
df['7ma'] = df.resample('7T', base=3).mean().shift(1)
df['8ma'] = df.resample('8T', base=2).mean().shift(1)
df['9ma'] = df.resample('9T', base=1).mean().shift(1)
Следующий поток GitHub предлагает использовать «base = x» для решения этой проблемы в Pandas: https: / /github.com/pandas-dev/pandas/issues/4197
По сути, при понижающей дискретизации в Pandas с мелкими данными, Pandas пытается «вывести» различные начальные точки. Изменение базы меняет место, где начинается выборка.
Я не понимаю логику предполагаемой особенности Pandas, но настройка базы решает эту проблему.