У меня есть фрейм данных, который показывает данные о выработке электроэнергии и нагрузке в стране (данные можно загрузить с https://data.open-power-system-data.org/time_series/2019-06-05, и я работаю с 60-минутным набором). Из этого datafeame я хочу извлечь столбцы, относящиеся к каждой стране в наборе данных, и создать новый фрейм данных для каждой страны и назначить для фрейма данных аббревиатуру для соответствующей страны.
До сих пор я читал в необработанных данных и получил список уникальных стран из заголовков столбцов в кадре данных и сохранил их в список с именем abbv.
Я пытаюсь использовать список abbv, чтобы создать кадр данных для каждой аббревиатуры (каждый i в abbv) и заполнить созданные кадры данных столбцами из исходного кадра данных, которые содержат аббревиатуру (i в abbv) для каждой страны. ,
Я пробовал использовать для l oop до сих пор, но не совсем уверен, является ли это правильным методом или я пытаюсь использовать l oop правильным способом. Любая помощь будет оценена. Я застрял на вложенном для l oop и не уверен, куда оттуда go - я знаю, что код не работает ниже, как есть, я оставил ошибки, чтобы попытаться объяснить свой мыслительный процесс для решения этой проблемы. Спасибо.
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
#read in
data_1h = pd.read_csv('/Users/xx/Downloads/opsd-time_series-2019-06-05/time_series_60min_singleindex.csv')
#get country abbreviations
abbv = [(i[:2]) for i in data_1h.columns]
abbv = pd.unique(abbv)
#create dataframe for each country
for i in range(len(abbv)):
for i in abbv:
i = pd.DataFrame()
columns = [col for col in data_1h.columns if i in col]
i = {columns: data_1h.column}