Создание нового файла Excel с преобразованиями из существующего файла Excel (с использованием python)

#python #excel #pandas #xlsx

#python #excel #pandas #xlsx

Вопрос:

У меня есть файл xlsx, df, который содержит большой объем данных. Я хочу извлечь данные из определенной ячейки и создать новый файл xlsx, содержащий эти извлеченные данные вместе с датой.

Вот файл, df:

     A   B   C                 #headers in excel
 
    1   2   3
  

Желаемый результат:
Я хочу извлечь число 3 из C1 (столбец C, строка 1), а затем создать новый файл df2, который выглядит следующим образом —

    Date        Value

   1/1/2020    3
            
  

Это то, что я делаю:

 import xlrd                                        #package for working with excel files
import xlwt                                        #allows you to create a new file
df = pd.read_excel(df.xlsx, sheetname="Sheet1")    #reading in my .xlsx file
worksheet = workbook.sheet_by_index(0)             #one sheet that I am iterating over
sheet.cell(0, 2).value                             #extracting the value in the first row, 2nd column
sheet.write(0, 2)                                  #Inserting data in 1st row and 2nd Column
  

Тем не менее, я застрял на добавлении определенной даты во вновь созданный файл

Любое предложение приветствуется

Комментарии:

1. Вы уже читаете лист с помощью pandas, почему вы пытаетесь изменить лист напрямую workbook ? Внесите все изменения в фрейм данных, затем сохраните в новый файл с помощью .to_excel

2. Хорошо, я вижу — я все еще учусь. Позвольте мне исследовать это. Имеет смысл

Ответ №1:

openpyxl — моя любимая библиотека для процесса Excel-python. Я использовал его в своем корпоративном проекте для импорта и экспорта данных из Excel.

Библиотека Python для чтения и записи файлов Excel (с расширением xlsx / xlsm / xltx / xltm).

Во-первых, чтобы установить этот пакет, вам необходимо завершить выполнение этой команды:

sudo pip3 install openpyxl

Давайте приведем пример того, как это работает.

Входной файл Excel

Демонстрационные данные Excel

Код Python

Выведите значение первого столбца

 # importing openpyxl module 
import openpyxl 
  
# Give the location of the file 
path = "C:\Users\Admin\Desktop\demo.xlsx"
  
# workbook object is created 
wb_obj = openpyxl.load_workbook(path) 
  
sheet_obj = wb_obj.active 
m_row = sheet_obj.max_row 
  
# Loop will print all values 
# of first column  
for i in range(1, m_row   1): 
    cell_obj = sheet_obj.cell(row = i, column = 1) 
    print(cell_obj.value)
  

ВЫВОД

 STUDENT 'S NAME
ANKIT RAI
RAHUL RAI
PRIYA RAI
AISHWARYA
HARSHITA JAISWAL
  

Ссылка:
чтение файла Excel с использованием модуля Python openpyxl