繁体   English   中英

如何将文件夹中的多个 CSV 文件合并为 Azure 上的单个文件?

[英]How to merge multiple CSV files in a folder to a single file on Azure?

我已经编写了这段代码并且它没有显示任何错误。 但是我看不到那个输出文件。 任何帮助将不胜感激。

from os import chdir
from glob import glob
import pandas as pd

def produceOneCSV(list_of_files, file_out):

   result_obj = pd.concat([pd.read_csv(file,encoding='utf-8') for file in list_of_files])

   result_obj.to_csv(file_out, index=False, encoding='utf-8')


root = "FOLDER PATH"

chdir(root)


file_pattern = ".csv"
list_of_files = [file for file in glob(root+'*.csv')]



file_out = "ConsolidateOutput.csv"
produceOneCSV(list_of_files, file_out)

检查您的文件夹路径以及您的应用程序路径和权限

我运行这段代码没有问题。 我从 3 个 CSV 开始,最后得到了一个。 但是,有一些配置问题导致我一开始看不到 CSV。 完整代码如下,并附有真实路径供参考。

以下是我必须解决的问题:

  1. 就目前而言,此代码存储在此代码所在的文件夹中。 这是故意的吗? 它通常不是,所以去检查你的file.py在哪里,看看你的 CSV 是否在那里。

  2. 检查您是否具有写入该文件夹的适当权限。 这在这里不是问题,但过去一直是项目的问题。

  3. 检查您的根文件夹是否正确,并且那里实际上有 CSV。 虽然代码在我本地找不到任何 CSV 时会引发错误,但您的设置可能会有所不同。

这是我的完整工作代码:

from os import chdir
from glob import glob
import pandas as pd


def produceOneCSV(list_of_files, file_out):
    result_obj = pd.concat([pd.read_csv(file, encoding='utf-8') for file in list_of_files])
    result_obj.to_csv(file_out, index=False, encoding='utf-8')


root = "C:\\Users\\Matthew\\PycharmProjects\\stackoverflow\\"

chdir(root)

file_pattern = ".csv"
list_of_files = [file for file in glob(root + '*.csv')]

file_out = "ConsolidateOutput.csv"
produceOneCSV(list_of_files, file_out)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM