【问题标题】:Export Pandas Dataframe to well-formed CSV将 Pandas 数据框导出为格式良好的 CSV
【发布时间】:2021-10-13 09:29:04
【问题描述】:

我有一个循环,在每次迭代中,我都会将 pandas 数据框导出到 CSV 文件。问题是我得到了你在第一张图片中看到的输出,但我需要得到与第二张类似的东西。 我也尝试了一些编码类型,例如 utf-8、utf-16,但没有任何改变。

我的解决方案与网上找到的解决方案之间的唯一区别是我的数据框是从 pickle 文件构建的,但我认为这不是问题所在。

    for pickle_file in files:
    key = pickle_file.split('/')[5].split('\\')[1] + '_' + pickle_file.split('/')[5].split('\\')[4]
    with lz4.frame.open(pickle_file, "rb") as f:
        while True:
            try:
                diz[key].append(pickle.load(f))
            except EOFError:
                break

for key in diz.keys():
    a = diz[key]
    for j in range(len(a)):
        t = a[j]
        for index,row in t.iterrows():
            if row['MODE'] != 'biflow':
                w = row['W']
                feature = row['FEATURE']
                mean = row['G-MEAN']
                rmse = row['RMSE']
                df.loc[-1] = [w] + [feature] + [rmse] + [mean] + [key]
                df.index = df.index + 1
    df = df.sort_values(by = ['W'])
    df.to_csv(path + key + '.csv', index = False)
    df = df[0:0]

【问题讨论】:

    标签: python pandas dataframe csv pickle


    【解决方案1】:

    数据格式正确。您需要做的是将每一行拆分为列。在 MS Excel 中,它是 Data > Text to Columns,然后按照函数向导进行操作。

    如果您使用不同的应用程序打开数据,只需谷歌如何将文本行数据拆分为该应用程序的列。

    【讨论】:

    • 感谢您的回答。我有大约 100 个需要正确格式化的输出文件,每次运行都手动执行会花费我很多时间。有什么办法可以自动化吗?
    • 似乎有很多在线服务可以提供您想要的。我不知道它们是免费的还是安全的,但你可以试试运气。我想对于您想要的,将其导出到 XLS 中实际上是有意义的。 Pandas 包内置了该功能,这样使用起来会容易得多。检查geeksforgeeks.org/exporting-a-pandas-dataframe-to-an-excel-file
    猜你喜欢
    • 1970-01-01
    • 2022-12-07
    • 2022-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-27
    相关资源
    最近更新 更多