【问题标题】:Pass every excel file in python from assigning a specific name通过分配特定名称传递python中的每个excel文件
【发布时间】:2021-05-26 15:08:02
【问题描述】:

我在一个目录中有以下 excel 文件:

excel_sheet_01

excel_sheet_02

。 . .

excel_sheet_nm

如何使用 pandas,每个 Excel 工作表都存储在名称的数据框变量中 对应最后两位数。即我会在 python 中获得以下变量:

01

02

...

纳米

非常感谢

【问题讨论】:

  • 你可以像df01, df02 ....一样保存它,但不能简单地保存为01, 02。根据规则,变量名不能以数字开头。
  • 感谢您的信息,我不知道!
  • 但我最感兴趣的是如何读取所有文件并为它们分配一个包含在文件名中的名称,具体名称并不重要

标签: python pandas


【解决方案1】:

如果您不想输入每个变量(尤其是如果您有未知数量的文件),您可以考虑将 DataFrame 存储在 List(或 Dict)中。类似:

import os
import pandas as pd
excel_sheets = [f.name for f in os.scandir(path) if not f.is_dir() and 'excel_sheet' in f.name]

my_dataframes = []
for f in excel_sheets:
    my_dataframes.append(pd.read_excel(f))

my_dataframes_dict = {}
for f in excel_sheets:
    my_dataframes_dict.update({f: pd.read_excel(f)})

对于列表,您可以通过索引访问它。对于字典,您可以选择所需的任何(唯一)名称。

【讨论】:

  • 你可能需要pd.read_excel,而不是pd.read_csv,但是是的,这应该是方法
  • 是的,非常真实!只需从 sn-p 复制粘贴即可。我将在答案中对其进行编辑。
猜你喜欢
  • 1970-01-01
  • 2020-12-06
  • 2013-02-11
  • 1970-01-01
  • 2011-08-21
  • 1970-01-01
  • 2018-07-17
  • 2020-02-10
  • 1970-01-01
相关资源
最近更新 更多