Как удалить последние строки в матрице из csv-файла?

Есть три кода один основной, который производит выполнение других, коды считывают матрицу из одного csv-файла, удаляют последние 4 строки и записывают новую матрицу(без последних 4 строк) в новый csv-файл. Подскажите как сделать что бы удалялись строки
Вот основной код:
import matrixfile as mf
import matrixziro as mz
from matplotlib.pyplot import matshow, show

mzr = mz.GetZiroMatrix(mf.GetMatrix('tekst.csv')) 
mf.SaveMatrix(mzr, 'resultat_2.csv')

matshow(mzr)
show()

Второй файл название matrixziro.py, в нём не получается сделать замену
def GetZiroMatrix(mt):
    return [len(m) - 1], m[0] = m[0],len(m) - 1]* len(row) for row in mt] #не работающая функция,оператор должен остаться обязательно

третий файл matrixfile.py
import csv

def GetMatrix(filename):
    return [[int(token) for token in line.split()] for line in open(filename)]

def SaveMatrix(mt, filename):
    with open(filename, 'w') as f:
        for row in mt:
            print(' '.join(map(repr, row)), file=f)
  • Вопрос задан
  • 97 просмотров
Пригласить эксперта
Ответы на вопрос 1
adugin
@adugin Куратор тега Python
Зачем изобретаете велосипеды?
with open('input.csv', 'r') as fi, open('output.csv', 'w') as fo:
    print(*fi.readlines()[:-4], file=fo, sep='')

Можно (и даже нужно!) через pandas:
import pandas a pd

pd.read_csv(..., skipfooter=4).to_csv(...)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы