300x250
1. csv 파일 준비
1) 내가 원하는것은 위 1-5 줄 스킵하고 마지막 eof 스킵하고 데이터를 추출하고싶다.
2. 코드 작성
0) write 파일 작성할때 newline='' , 설정은 필수다. 왜냐하면 프로그램 기본설정이 엔터가 들어가 있어 없애줘야한다.
1) csv 마지막줄의 카운트를 가져오는 것은 7번줄 참고
2) for 문으로 원하는 줄만 새로운 파일에 저장하는 12 번줄 참고
-> 12번줄 하기전에 읽어온 fileObject를 카운트 계산하는데 한번 사용해서 초기화 해줘야함
-> 초기화는 10번줄 참고 (초기화 안하면 csv 파일을 한번더 다시 읽어 줘야 할것이다)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
def csv_delete(name):
import csv
with open(name, 'r') as inp, open('name_edit.csv', 'w', newline='') as out:
writer = csv.writer(out)
fileObject = csv.reader(inp)
last_count=len(list(fileObject))
print(last_count) # 마지막줄을 출력합니다.
inp.seek(0) # 파일의 reader 초기화 해줘야 다음 코드가 작동합니다.
for index, row in enumerate(fileObject):
# print(row)
if index > 5-1 and index < last_count-1:
writer.writerow(row)
csv_delete('edit_csv_example.csv')
|
cs |
3. 결과
1) 내가 원하는 부분만 추출해내었다.
2) 파일저장은 계속 덮어서 작성된다. 기존거 잃기 싫으면 파일명을 바꾸든지 해야함.
300x250
'파이썬 > 파이썬일반' 카테고리의 다른 글
python(vscode)/전치행렬/내적/역행렬/numpy (0) | 2023.07.27 |
---|---|
python(vscode)/numpy 행렬 만들기/사칙연산/평균/표준편차 (0) | 2023.07.27 |
python(vscode)/csv read/일부분 가져오기/부분데이터/read_csv/skiprows/nrows/pandas (0) | 2023.07.16 |
python(vscode)/dataframe 비어있는지 확인하기 (0) | 2023.01.24 |
python(vscode)/결측치(NaN)그래프 그리기/zero-size array to reduction operation maximum which has no identity (0) | 2023.01.12 |