Tag: glob

在for循环中剥离扩展

我试图剥离.csv扩展名,以便该文件只保存为name.xslx而不是name.csv.xlsx但这似乎并没有工作。 我将不胜感激一些帮助。 谢谢。 import os import glob import csv import openpyxl import os.path #convert the csv to xslx for csvfile in glob.glob(os.path.join('.', '*.csv')): wb = openpyxl.Workbook() ws = wb.active with open(csvfile, 'rb') as f: reader = csv.reader(f) for r, row in enumerate(reader, start = 1): for c, val in enumerate(row, start = 1): ws.cell(row = […]

Pandas – Excel导入 – Python – Glob,如何在导入中放置stringvariables

我试图导入位于映射到我的本地Z驱动器的位置的Excel文件。 该位置包含许多文件。 我正在寻找只加载那些在标题中包含昨天的date..做到这一点我到目前为止: import glob import pandas as pd from datetime import date, timedelta yesterday = date.today() – timedelta(1) yesterday = yesterday.strftime('-%m-%d-%y') all_data = pd.DataFrame() for f in glob.glob('Z:*[yesterday]*'): df = pd.read_excel(f) all_data = all_data.append(df,ignore_index=True)` 但是,试图导入时不会调用variables“昨天”。 我知道我的语法一定是错的,因为所有文件都被调用。 如何在导入条件中包含“昨天”?

循环浏览一个文件夹,将多个Excel表格合并成一列

我有几个练习册,每个练习册有三张。 我想遍历每个工作簿,并将sheet_1所有数据合并到一个新的workbook_1文件sheet_2并将workbook_2文件& sheet_3合并到workbook_3中。 据我可以告诉下面的脚本做我需要的一切,除了附加数据之外,它覆盖了前面迭代的数据。 为简化起见,我简化了脚本,清理并简化了脚本,但如果需要的话,我很乐意分享完整的脚本。 import pandas as pd import glob search_dir= ('/Users/PATH/*.xlsx') sheet_names = ['sheet_1','sheet_2','sheet_2'] def a_joiner(sheet): for loop_x in glob.glob(search_dir): try: if sheet == 'sheet_1': id_file= pd.ExcelFile(loop_x) df_1 = id_file.parse(sheet, header= None) writer= pd.ExcelWriter('/Users/PATH/%s.xlsx' %(sheet), engine= 'xlsxwriter') df_1.to_excel(writer) writer.save() elif sheet == 'sheet_2': #do same as above else: #and do same as above […]

从一个目录中读取多个.xlsx文件到基于文件名的独立Pandas数据框中

我想从一个目录加载多个具有不同结构的xlsx文件,并根据文件名分配这些自己的dataframe。 我有30多个不同结构的文件,但为了简洁,请考虑以下几点: 3个excel文件[wild_animals.xlsx,farm_animals_xlsx,domestic_animals.xlsx] 我想分配每个都有自己的数据框,所以如果文件名包含'野'它被分配到wild_df,如果农场然后farm_df和如果国内然后dom_df。 这只是一个过程中的第一步,因为实际的文件包含大量需要根据文件types进行清理的“噪音”,它们的文件名也会每周更改,只有less数关键标记保持不变。 我的假设是glob模块是开始这样做的最好方法,但是在文件扩展名的非常具体的部分方面,并使用它来分配给一个特定的DF,我变得有点失落,所以任何帮助表示赞赏。 我问了一个类似的问题,但这是我现在解决的大部分问题的一部分。