|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
11.05.2023, 13:02 | #1 |
Пользователь
Регистрация: 27.03.2023
Сообщений: 25
|
Как сохранить изменения сделанные в dateframe pandas
Загружаю таблицу excel в df pandas, дописываю текущую дату, и нужно все вместе с изменениями сохранить в первоначальный файл excel
import pandas # созает DateFrame excel_data_df = pandas.read_excel('result.xlsx', sheet_name='Sheet', header=None) list = excel_data_df.values.tolist() excel_data_df = pd.DataFrame(list) for row in list: print(' '.join([str(elem) for elem in row])) samo 2020-12-20 00:00:00 2021-01-20 00:00:00 2020-02-20 00:00:00 NaT NaT 2023-03-19 00:00:00 2023-04-03 sami 2020-12-20 00:00:00 2021-01-20 00:00:00 2020-02-20 00:00:00 NaT 2023-03-18 00:00:00 NaT 2023-04-03 sam 2020-12-20 00:00:00 2021-01-20 00:00:00 2020-02-20 00:00:00 NaT NaT NaT 2023-04-03 использую df.to_excel, но он сохраняет так как было до изменений а добавленную дату не дописывает |
11.05.2023, 19:54 | #2 |
Старожил
Регистрация: 23.10.2010
Сообщений: 2,330
|
1. Код не тестил,но есть вопрос:
Код:
2. Не называйте переменные именами известных функций, например, list(), max(), min(), ... Их всё же много, но можно добавить символ нижнего подчёркивания: Код:
Скопируйте код -> Выделите его -> Нажмите кнопку [CODE] в поле над формой ввода и будет вам счастье.
Как-то так, ...
|
12.05.2023, 06:01 | #3 |
Пользователь
Регистрация: 27.03.2023
Сообщений: 25
|
Вот этот код работает сохраняет но без изменений
import openpyxl
import pandas as pd from datetime import datetime import pandas # созает DateFrame excel_data_df = pandas.read_excel('result.xlsx', sheet_name='Sheet', header=None) excel_data_df.iloc[:,1:] = excel_data_df.iloc[:,1:].apply(lambda x: pd.to_datetime(x).dt.date) list = excel_data_df.values.tolist() excel_data_df = pd.DataFrame(list) k = datetime.now().date() for i in range(len(list)): for j in range(len(list[i])): if k not in list[i]: list[i].append(k) # вложенные списки по срокам for row in list: print(' '.join([str(elem) for elem in row])) # excel_data_df.to_excel (r'result.xlsx', sheet_name="Sheet", index= False, header= False, ) writer = pd.ExcelWriter('result.xlsx', engine='xlsxwriter') excel_data_df.to_excel(writer, "Sheet", index= False, header= False, ) writer.save() НЕ ПОНИМАЮ ПОЧЕМУ НЕ СОХРАННЯЕТ ДОБАВЛЕННЫЕ В PANDAS DATEFRAME ТЕКУЩИЕ ДАТЫ |
12.05.2023, 09:18 | #4 |
Старожил
Регистрация: 23.10.2010
Сообщений: 2,330
|
1. Приведите код в порядок.
Как? Написал выше. 2. Код:
В коде замените pandas на pd (это псевдоним, "кликуха" модуля), и второй раз не импортируйте. PS: Копаться в вашем коде совсем неинтересно. Замечу, что и не только мне
Как-то так, ...
|
12.05.2023, 15:05 | #5 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,341
|
Код:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
13.05.2023, 05:02 | #6 |
Пользователь
Регистрация: 27.03.2023
Сообщений: 25
|
VSCODE
ViktorR, Спасибо я еще только учусь, ваши подсказки мне помогли лучше разобраться, только вод где [CODE)
|
13.05.2023, 05:04 | #7 |
Пользователь
Регистрация: 27.03.2023
Сообщений: 25
|
BDA, Спасибо все работает как надо!
|
13.05.2023, 15:37 | #8 | |
Старожил
Регистрация: 23.10.2010
Сообщений: 2,330
|
Цитата:
Там, слева направо жирный, италик, зачёркнутый, кнопки выравнивания текста и далее кнопка [CODE] Тег коде можно написать и ручками: /[CODE/] import numpy as np /[/CODE/] Тут слэш экранирует квадратные скобки, для ясности. Эти слэши, перед скобками, не вводить.
Как-то так, ...
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как вывести таблицу excel с датами без времени в pandas dateframe | omelsn@mail.ru | Общие вопросы по программированию, компьютерный форум | 0 | 03.04.2023 10:55 |
Как сохранить сделанные тесты через страничку админа и вывести их в меню? | Dmitriy332 | JavaScript, Ajax | 2 | 24.05.2021 11:11 |
Сохранить изменения в БД | Кротяка | C++ Builder | 1 | 18.05.2013 19:56 |
запретить сделанные изменения | npocmop | Microsoft Office Word | 39 | 22.11.2010 09:03 |