Преобразовать данные в датафрейма с n столбцов
У меня есть данные, которые располагаются в строках эксель типа
1,5 1,7 1,1 1,4 2,5 3,0 1,5 1,2 1,1 2,3 2,0 1,3 2,4 1,4 1,3 1,7 1,5 1,2 1,3 2,1
Я хочу получить из них датафрейм с n столбцами, вытаскивая в каждый из них по 5 последующих элементов, чтобы получилось вот так:
1,5 3,0 2,0 1,7
1,7 1,5 1,3 1,5
1,1 1,2 2,4 1,2
1,4 1,1 1,4 1,3
2,5 2,3 1,3 2,1
Есть ли какая-то функция для этого или по каким ключевым словам я могу найти что-то на эту тему? (пока неправильно формулирую запрос, видимо, потому что нахожу всё не то)
Ответы (1 шт):
Автор решения: Andrew
→ Ссылка
Предположим, что входные данные это строка. Тогда можно для начала преобразовать ее в вектор numpy, а затем решейпить в нужную форму.
Полученную матрицу можно напрямую подать на вход pd.DataFrame и получить нужный результат.
Код:
data_numbers = str('1,5 1,7 1,1 1,4 2,5 3,0 1,5 1,2 1,1 2,3 2,0 1,3 2,4 1,4 1,3 1,7 1,5 1,2 1,3 2,1')
pd.DataFrame(
np.array(data_numbers.split()).reshape((4,5))
)

