【问题标题】:Issue converting path to raw string while loading it to a dataframe在将路径加载到数据框时将路径转换为原始字符串
【发布时间】:2021-08-28 23:15:17
【问题描述】:

我有一个列表,其中包含我需要的所有 csv 文件的路径。我需要获取每个 csv 文件的内容并附加到数据框。但是在使用 pd.read_csv 函数时,因为路径需要是原始字符串,所以我遇到了错误。由于这必须在一个循环中完成,我想知道它是如何完成的。有人可以帮忙吗?

我的列表与下面显示的类似。

path_list = [C:\Users\varun\Desktop\Csv_files\copy1.csv,
C:\Users\varun\Desktop\Csv_files\copy2.csv...]
append_list = []

for csv_path in path_list():
    df = pd.read_csv(csv_path)
    append_list.append(df)

append_list = pd.concat(append_list)




【问题讨论】:

    标签: python pandas string list dataframe


    【解决方案1】:

    您需要在每个字符串周围加上引号以创建一个列表,因此请更改:

    path_list = [C:\Users\varun\Desktop\Csv_files\copy1.csv,
    C:\Users\varun\Desktop\Csv_files\copy2.csv...]
    

    收件人:

    path_list = [r’C:\Users\varun\Desktop\Csv_files\copy1.csv’,
    r’C:\Users\varun\Desktop\Csv_files\copy2.csv’]
    

    使用 r' 的原因是您的字符串包含 \ - 这是一种处理方式。

    还有其他方法。

    Python 使用 / 而不是 \ 作为路径分隔符在 Windows 上运行得非常愉快,因此您也可以使用:

    path_list = [’C:/Users/varun/Desktop/Csv_files/copy1.csv’,
    ’C:/Users/varun/Desktop/Csv_files/copy2.csv’]
    

    另一种方法是通过将它们加倍来逃避 \:

    path_list = [’C:\\Users\\varun\\Desktop\\Csv_files\\copy1.csv’,
       ’C:\\Users\\varun\\Desktop\\Csv_files\\copy2.csv’]
    

    【讨论】:

    • 感谢您的详细解释。它正在工作。
    • 您是 StackOverflow 的新手,否则我不会这么说:如果我的回答回答了您的问题,您可以接受该答案并选择支持该答案。
    • 嗨@barny,我接受了答案。我尝试过投票,但由于我的声誉很低,因此没有被接受。
    猜你喜欢
    • 1970-01-01
    • 2022-08-17
    • 2012-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-02
    相关资源
    最近更新 更多