Разделение кадра данных аналогично раздаче картPython

Программы на Python
Anonymous
Разделение кадра данных аналогично раздаче карт

Сообщение Anonymous »

У меня есть набор данных об учащихся, отсортированный по классам, который я хочу разделить на три блока данных, чтобы в каждой из трех групп было четное количество учащихся в каждом классе. Я думал об этом как о раздаче карт: вы знаете, раздавая по одной карте каждому из трех человек по очереди, но хотел бы знать более эффективный способ:

Код: Выделить всё

for i in range(0, len(blue), 3):
blue_1_df.loc[len(blue_1_df)] = blue.iloc[i]
if  i+1 < len(blue):
blue_2_df.loc[len(blue_2_df)] = blue.iloc[i+1]
if i+2 < len(blue):
blue_3_df.loc[len(blue_3_df)] = blue.iloc[i+2]
Условия в цикле предотвращают ошибки выхода индекса за диапазон в случае, если разделенный фрейм данных не делится на 3.
Это работает, но я хотел бы знать, что будет более эффективно.>

Подробнее здесь: https://stackoverflow.com/questions/797 ... ling-cards

Вернуться в «Python»