У меня есть следующий фрейм данных
col1 col2 col3
0 str9 47 55
1 str8 43 51
2 str9 46 52
3 str2 42 56
и следующий строковый массив, сгенерированный из df.col1.unique()
strings = ['str9', 'str8', 'str9', 'str2']
Я хочу создать новые фреймы данных для управления количеством данных, которыми я манипулирую, где каждый новый фрейм данных представляет df[df.col1 == strings[0]]
, df[df.col1 == strings[1]]
и т. Д. Для всех значений в strings
Я бы хотел назвать их исходя из их значений в строках, поэтому у нас будет
df_str9 = df[df.col1 == strings[0]]
Я знаю, что могу циклически проходить по строке, чтобы получить доступ к каждому значению в строках, но как мне создать фрейм данных, чтобы он соответствовал требованиям к именам, указанным в списке?
Что-то вроде:
data_file = pd.DataFrame(data = ([['str9', 47, 55], ['str8', 43, 51], ['str9', 46, 52] , ['str2', 42, 56]] ), columns = (['col1', 'col2', 'col3']))
for string in strings:
df_string = df[df.col1 == string]