Названия столбцов как числа Pandas
Как сделать названия столбцов в CSV-файле при pandas.read_csv() float-числами, а не строкой?
(В моем случае, название столбца = значение температуры. И все время float'ить() – достаточно стремно).
Ответы (2 шт):
Автор решения: Максим Фисман
→ Ссылка
Можно просто циклом спарсить названия столбцов.
Объявим DataFrame, в котором названия столбцов - строки:
import pandas as pd
df = pd.DataFrame(
[[1, 0, 0],
[1, 0, 1],
[0, 1, 0]],
columns=['10', '55.75', '20.8'] # Строки
)
Преобразуем:
df.columns = [float(column_name) for column_name in df.columns] # Переводим в float
Теперь может получить столбец по числу:
df[55.75]
Автор решения: CrazyElf
→ Ссылка
Ну вообще это ещё проще делается на самом деле, чем в уже данном ответе. Довольно стандартным для Pandas "векторным" образом:
df.columns = df.columns.astype(float)
Хотя если нужно обрабатывать какие-то особые случаи, то, вероятно, тогда лучше парсить строки по отдельности.