Удалить строку в CSV (данные 1 миллиона), если соседние строки имеют повторяющиеся значения - PullRequest
0 голосов
/ 26 мая 2020

Я новичок в работе с файлами в python и в области науки о данных, я хочу удалить строку в CSV (данные 1 миллион), если в соседних строках есть повторяющиеся значения, например

      col1       col2     col3     col4       col5
row1             5
row2             5
row3             6
row4             5

После программы

      col1       col2     col3     col4       col5
row1             5
row2             6
row3             5

Пожалуйста, помогите, пока я написал функцию, которая выдает ошибку памяти;

from openpyxl import load_workbook


wb = load_workbook(filename="sample.xlsx")
sheet = wb.active
for i in range(2,526023):
    j = i+1
    if (sheet["F"+str(i)].value==sheet["F"+str(j)].value):
        sheet.delete_rows(j)
wb.save("sample.xlsx")

Цитата

1 Ответ

0 голосов
/ 26 мая 2020

IIU C:

df = pd.read_excel('sample.xlsx')

df = df[df['col2'] != df['col2'].shift()]

df.to_excel('sample.xlsx')
...