【问题标题】:How to Import Multiple excel file in PandasDataframe如何在 Pandas Dataframe 中导入多个 excel 文件
【发布时间】:2019-08-08 18:29:18
【问题描述】:

我无法从仅一个 Dataframe 的目录中加载多个 excel 文件。 我尝试了两种不同的方法,但都不起作用。

给我这个错误。

我该如何解决这个问题?它在创建列表时确实找到了文件,但无法在 Dataframe 中打开它。 有什么提示吗?

import pandas as pd
import os
import glob
import xlrd

cwd = os.getcwd()
cwd

path = '/Users/giovanni/Desktop/news media'
files = os.listdir(path)
files


files_xls = [f for f in files if f[-3:] == 'lsx']
files_xls





df = pd.DataFrame()

for f in files_xls:
    data = pd.read_excel(f)
    df = df.append(data)

FileNotFoundError: [Errno 2] No such file or directory: 'NOV.xlsx'

【问题讨论】:

  • 你在用windows吗?
  • 您需要提供更多信息:所有 excel 文件的格式是否相同? (即与数据相同的工作表名称,相同的列)。
  • 检查一下,它更符合您的目的:stackoverflow.com/questions/28669482/…
  • 我正在使用 MAC。所有文件都采用相同格式它确实在目录中找到所有列表,所以当运行 files_xls 所有名称都显示为输出,但比给我这个错误
  • 请更改文件扩展名的拼写,应该是'xls',而不是'lsx'

标签: python excel pandas xlsx


【解决方案1】:

试试这个:

import os
import glob
path = '/Users/giovanni/Desktop/news media'
df = pd.DataFrame()
for file in glob.glob(os.path.join(path,'*.xlsx')):
    data = pd.read_excel(file)
    print(data)
    df = df.append(data)

【讨论】:

    【解决方案2】:

    将您的最终循环替换为:

    for f in files_xls:
        full_path = os.path.join(path, f)
        data = pd.read_excel(full_path) 
        df = df.append(data)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-26
      • 2021-04-03
      • 2014-12-26
      • 2020-02-05
      • 2019-06-08
      • 2014-01-21
      • 2014-01-21
      相关资源
      最近更新 更多