如何创建一个csv文件?

问题描述 投票:0回答:2

我将从不同的excel文件中提取的数据保存到CSV文件中,这是代码:

import pandas as pd
def save_frames(frames, output_path):

        pd.DataFrame( data_mosul_df).to_csv
        output_path= r'C:\Users\Sarah\Desktop\tt' 

        for frame in frames:
            frame.to_csv(output_path, mode='a', header=False)

if __name__ == '__main__':
       frames = []
       save_frames(frames, r'C:\Users\Sarah\Desktop\tt\datam.csv')

问题是代码正在运行,但是未创建CSV文件,有人知道如何解决此问题?谢谢

python pandas csv
2个回答
1
投票
您设置

frames = []

所以for循环永远不会执行,因此不会创建文件。

0
投票
请确保您已经在指定路径中拥有此文件:

C:\Users\Sarah\Desktop\tt\datam.csv

如果

文件(请检查文件,不仅检查foldeR)不存在,请提前创建它(附加可能无法为您创建文件)。

在您的示例框架中,是一个空列表,请确保在您的真实代码框架中正确填充了。

我添加了快速调试打印信息,以帮助您查找。

以下几行对我没有100%的意义,所以我删除了它们:

pd.DataFrame( data_mosul_df).to_csv output_path= r'C:\Users\Sarah\Desktop\tt'

您能解释一下您想在这里做什么,以便我可以以更有用的方式编辑答案吗?

请尝试以下代码:

import pandas as pd def save_frames(frames, output_path): print("Frames content:") print(frames) for frame in frames: frame.to_csv(output_path, mode='a', header=False) if __name__ == '__main__': frames =[pd.DataFrame(data_mosul_df).to_csv] save_frames(frames, r'C:\Users\Sarah\Desktop\tt\datam.csv')


0
投票
为您提供更大的图像:我编写了一个代码以从不同的excel文件中提取数据,这里的代码是:

import os from os import walk import pandas as pd path = r'C:\Users\Sarah\Desktop\IOMTest' my_files = [] for (dirpath, dirnames, filenames) in walk(path): my_files.extend([os.path.join(dirpath, fname) for fname in filenames]) all_sheets = [] for file_name in my_files: #Display sheets names using pandas pd.set_option('display.width',300) mosul_file = file_name xl = pd.ExcelFile(mosul_file) mosul_df = xl.parse(0, header=[1], index_col=[0,1,2]) #Read Excel and Select columns mosul_file = pd.read_excel(file_name, sheet_name = 0 , index_clo=None, na_values= ['NA'], usecols = "A, E, G, H , L , M" ) #Remove NaN values data_mosul_df = mosul_file.apply (pd.to_numeric, errors='coerce') data_mosul_df = mosul_file.dropna()

我想将data_mosul_df中的数据保存到一个csv文件中>
© www.soinside.com 2019 - 2024. All rights reserved.