Задача на Python про температуру
В файле input.csv хранится информация о температуре на определенную дату. Первый столбец называется date, в данном столбце хранится дата. Второй столбец называется temperature_c, здесь хранится информация о температуре по шкале Цельсия. Необходимо добавить новый столбец с названием temperature_f, в котором будет храниться информация о температуре по Фаренгейту в соответствующий день. Результат округлите до целого с помощью round().
Формат ввода
На вход подается файл input.csv, в первой строке названия столбцов: date и temperature_c, данные в строках разделены с помощью запятых. Данные в колонке temperature_c - числовые.
Формат вывода
Результат необходимо сохранить в файл output.csv, разделитель - запятая.
Примечания
Формула перевода температуры по шкале Цельсия в температуру по шкале Фаренгейта:
tf=9/5∗tc+32
Используйте метод apply.
Не забывайте, что в качестве параметра метода apply необходимо передавать либо lambda-функцию, либо имя функции, возвращающей некоторое значение.
Для генерации новой колонки можно использовать конструкцию: df['new_col_name'] = lst, где
df − объект типа pandas.DataFrame,
'new_col_name' − имя колонки, которую нужно добавить,
lst − значения, которые должны быть добавлены в новую колонку (список).
Здравствуйте, Лен.
Вот программа для Вас:
# Подключаю модуль для работы с данными
import pandas
# Считываю csv-файл
df = pandas.read_csv("input.csv",delimiter=",")
# Добавляю колонку, а в неё записываю температуру по Фаренгейту
df.loc[:,"temperature_f"] = df.temperature_c.apply(lambda x: x*9/5+32)
# Вывожу на экран данные
print(df)
# Вывожу эти же данные в файл output.csv
df.to_csv("output.csv")
А вот тут - эта же программа + файл input.csv и файл output.csv