У меня есть пара тысяч данных в excel. Однако в одной колонке заполняется только каждая пятая строка. То, что я пытаюсь сделать, это заполнить четыре пустые строки ниже каждой заполненной строки данными из строки выше. У меня есть понимание новичком питона, поэтому, если кто-то может направить меня в правильном направлении, это будет большой помощью. Большое спасибо.Заполнение недостающих данных в excel
ответ
Должно быть легко исправить с помощью VBA (хотя вы могли бы даже сделать что-то подобное с созданной колонки и формулы Excel):
Sub FillIn()
Dim intLast As Integer, intColumn As Integer
intLast = 100 'your last row'
intColumn = 5 'the column missing data'
For i = 2 To intLast 'assume 2 because of headers'
If IsEmpty(Cells(i, intColumn)) Then Cells(i, intColumn).Value = Cells(i - 1, intColumn).Value
Next i
End Sub
Просто замените значения intLast и intColumn как ваши ценности.
На основании вашего описания, это, кажется, достаточно легко сделать в Excel:
Предположим row 1
содержит заголовки столбцов, а данные начинаются в row 2
. Если column A
содержит ваши значения (начиная с A2
), в ячейке B2
используйте формулу =IF(ISBLANK(A2), B1, A2)
и заполните. Эта формула вернет значение A2
, если оно не пустое, и вернет предыдущее значение в column B
, если текущее значение в column A
пустое.
Обратите внимание, что для этого необходимо, чтобы ячейка в первой группе содержала значение, которое вы хотите заполнить.
пост-скрипт для общей ссылки: Excel имеет трудное время с пустыми клетками в результате формул, поэтому формула=""
(или результатом чего-то вроде =IFERROR(..., "")
) является не пустой, но имеет длину 0. Измените ISBLANK(A2)
на LEN(A2)<1
.
Есть различные способы достигнуть обновления данных Excel с Python:
модуль CSV
данные Сохранить Excel как CSV. Импортируйте в Python как кортеж, список или словарь, используя csv module. Затем, итерации по элементам списка, а затем добавьте необходимые данные.
#!/usr/bin/python
import csv
with open('C:\Path\To\ExcelDataFile.csv', 'rt') as csvfile:
csvReader = csv.reader(csvfile)
data = []
for row in csvReader:
data.extend(row)
for i in range(0, len(data)):
if data[i][colnum] != None:
data[i + 1][colnum] = <somevalue>
data[i + 2][colnum] = <somevalue>
data[i + 3][colnum] = <somevalue>
data[i + 4][colnum] = <somevalue>
Панды dataframe
данных Импорт Excel в Python pandas library dataframe. Затем найдите определенные строки по индексу, затем добавьте необходимые данные.
#!/usr/bin/python
import pandas as pd
df = pd.read_excel('C:\Path\ToExcel\DataFile.xlsx', 'ExcelSheetName')
for i, row in df.iterrows()
if df.loc[i, colnum] != None :
df.loc[i + 1, column] = <somevalue>
df.loc[i + 2, colnum] = <somevalue>
df.loc[i + 3, colnum] = <somevalue>
df.loc[i + 4, colnum] = <somevalue>
Excel макрос
Script Excel макрос для очистки данных по мере необходимости и есть Python запустить макрос перед импортом. Или просто запустите макрос в Excel и импортируйте конечные данные в Python, используя вышеупомянутые параметры.
#!/usr/bin/python
import os
import win32com.client
xl=win32com.client.Dispatch("Excel.Application")
xl.Workbooks.Open(Filename="C:\Path\ToMacroEnabled\ExcelData.xlsm")
xl.Application.Run("ExcelData.xlsm!macroname.macroname")
...
Большое спасибо! –
- 1. Заполнение недостающих данных
- 2. заполнение недостающих данных в R
- 3. Заполнение валюты недостающих данных в панд Dataframe
- 4. SAS: Заполнение недостающих значений в блоке данных
- 5. заполнение недостающих «дыр» в наборе данных
- 6. Заполнение недостающих данных в панд dataframe
- 7. Заполнение данных в Excel
- 8. Excel - Отображение недостающих значений
- 9. Заполнение отсутствующих данных в excel
- 10. панда: Заполнение недостающих значений в группе
- 11. Идентификация недостающих данных
- 12. Заполнение недостающих последних данных с последними имеющимися данными
- 13. Сравнение и заполнение данных excel
- 14. История записей, недостающих записей, заполнение пробелов
- 15. pandas.Dataframe: заполнение недостающих значений из другого DF
- 16. Поиск недостающих внешних ссылок в Excel
- 17. Автоматическое заполнение данных в существующий шаблон Excel
- 18. Заполнение данных SQLite Dat Records в Excel
- 19. Заполнение данных HttpResponce csv в excel - VBA
- 20. Заполнение столбцов в Excel
- 21. Преодоление недостающих функций Google Таблиц в Excel
- 22. Вопросы о недостающих данных
- 23. R: Гистограмма недостающих данных
- 24. SQL МЕЖДУ недостающих данных
- 25. Исключение недостающих данных
- 26. Excel: заполнение данных на нескольких рабочих листах
- 27. Панда: заполнение недостающих значений по среднему в каждой группе
- 28. Заполнение QTableWidget из Excel
- 29. Автоматическое заполнение пробелов в Excel
- 30. недостающих строк в R
openpyxl может вам помочь. –
Либо используйте предложенный пакет, либо по крайней мере предоставите нам образец ваших данных и вашу попытку кода. – Leb