извините, у меня возникли проблемы с объяснением проблемы в заголовке
Случайно мы повернули наш Pandas кадр данных к следующему:
df = pd.DataFrame(np.array([[1,1,2], [1,2,1], [2,1,2], [2,2,2],[3,1,3]]),columns=['id', '3s', 'score'])
id 3s score
1 1 2
1 2 1
2 1 2
2 2 2
3 1 3
Но нам нужно снять это поэтому df будет выглядеть так (оригинальная версия): столбец «3s» «разворачивается» к дискретному набору из 3 упорядоченных столбцов с 0 и 1, которые добавляются по порядку. Таким образом, если бы у нас было '3s'= 2
с 'score'= 2
, значения будут [1,1,0]
(2 из 3 в порядке) в столбцах ['4','5','6']
(второй набор из 3 с) для соответствующих id
df2 = pd.DataFrame(np.array([[1,1,1,0,1,0,0], [2,1,1,0,1,1,0], [3,1,1,1,np.nan,np.nan,np.nan] ]),columns=['id', '1', '2','3','4','5','6'])
id 1 2 3 4 5 6
1 1 1 0 1 0 0
2 1 1 0 1 1 0
3 1 1 1
Любая помощь с благодарностью! (пожалуйста, спасите меня)