首页 > 解决方案 > csv writerows 只写第一行而不写其他行

问题描述

我正在尝试将一些数据写入新的 csv 我试图按百分比拆分文本但没有这样做,当我写入 csv 时,它只会将旧 csv 的 col 名称写入新的所有其他行不是那里。

for root,dirs,files in os.walk(path):
    for directory in dirs:
        for root,dirs,files in os.walk(path+"/"+directory+"/"):
            for file in files:
                if file != "Bomgar.csv":


  text=pd.read_csv("/Users/vkhar12/sentinail_data_scrubing/"+directory+"/"+file)
                    line_count = math.ceil((text.shape[0] * 20) / 100)
                    start=text[:line_count]
            with open("start.csv","w") as myfile:
                wr=csv.writer(myfile)
                wr.writerows([start])

标签: pythoncsvwriter

解决方案


由于您的想法是将内容从一个 .csv 移动到另一个,我强烈建议使用 pandas 库并创建一个数据框来这样做:

import pandas as pd

df = pd.read_csv(old_file_path, sep = ',')
df = df.drop(list_of_columns_to_delete, axis=1)
df.to_csv(new_file_path, ',')

如果您没有 pandas,请使用 .pip 安装它pip install pandas


推荐阅读