簡體   English   中英

使用 python 從.csv 文件中刪除行

[英]Remove rows from .csv file using python

我在 a.csv 文件中有這些數據,我想從我的 csv 文件中刪除第 4 行,然后使用 python 將文件的 rest 保存在我的數據集中!

import csv
with open('dataset1.csv','rb') as inp, open('dataset-1copy.csv','wb') as out:
    i = 0
    for line in inp:
        if i >= 4:
            print(line)
            csv.writer(out).writerows()
        i+= 1
    

使用此代碼並出現錯誤:

Error                                     Traceback (most recent call last)
~\AppData\Local\Temp/ipykernel_14912/736960677.py in <module>
      4         if i >= 5:
      5             print(line)
----> 6             csv.writer(out).writerows(line)
      7         i+= 1
      8 

Error: iterable expected, not int
import pandas as pd
df = pd.read_csv("dataset1.csv",skiprows=4)
df.to_csv("new_csv.csv",index=False)

你也可以這樣做:

lines = list()
remove= [1,2,3,4]

with open('dataset1.csv', 'r') as read_file:
    reader = csv.reader(read_file)
    for row_number, row in enumerate(reader, start=1):
        if(row_number not in remove):
            lines.append(row)

with open('new_csv.csv', 'w') as write_file:
    writer = csv.writer(write_file)
    writer.writerows(lines)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM