В настоящее время я работаю над проектом, в котором мне нужно сначала объединить два набора данных:
Первый набор данных содержит данные о погоде с 30-минутными интервалами. Второй набор данных содержит данные минутного уровня с фотоэлектрическим напряжением и изображениями облаков, но, в отличие от первого, второму не хватает согласованности во времени, поэтому может отсутствовать несколько часов в день. обратите внимание, что оба имеют временной столбец.
Цель состоит в том, чтобы провести мультимодальный анализ (временной ряд + изображение) для прогнозирования фотоэлектрического напряжения.
Моя проблема в том, что я расширил данные о погоде, чтобы они соответствовали минутным интервалам уровня, путем прямого заполнения данных в течение каждого 30-минутного интервала (данные о погоде (температура, скорость ветра, солнечное излучение и т. д.) интерполируются не линейно, а для каждых 30 минут блок с соответствующими данными, я расширил время (0–29 минут) и дал те же данные 30-минутного блока, которые он содержит), но после слияния объединенный набор данных имеет меньше строк. Каковы оптимальные способы объединения двух наборов данных в столбце времени без потери тысяч строк? Для справки: набор данных PV и изображений охватывает период от нескольких месяцев до 3 лет, но записано всего около 400 тысяч минут. так что это много дней без данных.
набор данных PV/изображений содержит изображение времени и данные о напряжении PV, и проблема в том, чтобы они были согласованными, скажем, из 8 с утра до 22:00 каждую минуту с соответствующим временем, изображение данных напряжения pv, но затем обрезается до следующего дня в 3 часа ночи и продолжается в том же духе, содержимое каждой строки единообразно, значений «NaN» нет, в основном это просто несколько часов тот день отсутствуют, и это случается часто. как я уже сказал, за 3 года выводится только 400 тыс. минут (строк).
и цель пока не ясна, но я думаю, что это будет мультимодальный анализ двух наборов данных, где в конце концов, выходные данные голов каждой модели (одна, которая принимает входные изображения, другая принимает данные о погоде) будут использоваться для прогнозирования? Я не совсем уверен и не делал этого раньше.
Кроме того, поскольку это будет представлено в модели CNN во временных рядах, будет ли отсутствие постоянного временного интервала проблема или есть способ обойти это? Я никогда не имел дела с моделью временных рядов и задаюсь вопросом, стоит ли мне вообще этим заниматься.
from PIL import Image
import io
def decode_image(binary_data):
# Convert binary data to an image
image = Image.open(io.BytesIO(binary_data))
return np.array(image) # Convert to NumPy array for processing
# Apply to all rows
df_PV['decoded_image'] = df_PV['image'].apply(lambda x: decode_image(x['bytes']))
# Insert the decoded_image column in the same position as the image column
image_col_position = df_PV.columns.get_loc('image') # Get the position of the image column
df_PV.insert(image_col_position, 'decoded_image', df_PV.pop('decoded_image'))
# Drop the old image column
df_PV = df_PV.drop(columns=['image'])
print(df_PV.head())
# Remove timezone from the column
expanded_weather_df['time'] = pd.to_datetime(expanded_weather_df['time']).dt.tz_localize(None)
# also remove timezone
df_PV['time'] = pd.to_datetime(df_PV['time']).dt.tz_localize(None)
# merge
combined_df = expanded_weather_df.merge(df_PV, on='time', how='inner')```
Подробнее здесь: https://stackoverflow.com/questions/793 ... -intervals
Проблема с объединением наборов данных временных рядов для согласованных временных интервалов ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Проблема с объединением наборов данных изображений для обнаружения объектов.
Anonymous » » в форуме Python - 0 Ответы
- 8 Просмотры
-
Последнее сообщение Anonymous
-