Python csv writerows仅写入第一行,不写入其他行
我正在尝试将一些数据写入新的csv。我正在尝试按百分比分割文本,但未能这样做。当我写入csv时,它只将旧csv的列名称写入新csv。所有其他行都不存在Python csv writerows仅写入第一行,不写入其他行,python,csv,writer,Python,Csv,Writer,我正在尝试将一些数据写入新的csv。我正在尝试按百分比分割文本,但未能这样做。当我写入csv时,它只将旧csv的列名称写入新csv。所有其他行都不存在 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:
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])
由于您的想法是将内容从一个.csv移动到另一个.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 install pandas安装它。您能举一个例子说明您到底想写什么吗?我的父csv有两个列,每个列有22行,但它只将两个列的标题写入新的csvOk,那么,您的想法是将内容从一个数据帧移动到另一个数据帧?是的,没错,但我不必将所有内容移动到新的CSV。您想移动什么?我删除了一些列,例如,我想根据我用来计算百分比的公式从旧csv中添加行,例如,如果我的旧csv有两个列,两个列中都有22行,我想添加旧csv的20%,意味着从文件插入新csvSorry开始的20%行,如果看不到更多的代码,就很难提供更多帮助。但是,我建议您在原始CSV的dataframe版本中执行计算,例如,在上述示例中的df变量中执行计算。如果还有什么我能帮你的,尽管告诉我;