import pandas as pd
import os, glob
os.chdir(r'c:\Users\Documents\Files')
def files(): #to select the files that have RMP and WE on their name
list_files= pd.Series()
for file in glob.glob('RMP*WE*'):
data= pd.Series(file)
list_files= list_files.append(data, ignore_index=True)
return list_files
a= files()
print("This is the variable a\n", a)
def extract_tab(): #to concatenate the sheet called Metrics that all files have
frame_files= pd.DataFrame()
try:
for file in a:
data= pd.read_excel(file,sheet_name='Metrics')
frame_files= frame_files.append(data, ignore_index=True)
except:
pass
return frame_files
b= extract_tab()
print("This is b\n",b)
IIUC,你可以在你的目录上做一个列表comp。
如果使用Python 3.4+
from Pathlib import Path
path_ = 'c:\Users\Documents\Files'
dfs = [pd.read_excel(f,sheet_name='metrics') for f in Path(path_).glob('RMP*WE*')]
df = pd.concat(dfs)
或者如果只能使用OS
模块:
os.chdir('c:\Users\Documents\Files')
files = glob.glob('RMP*WE*')
dfs = [pd.read_excel(f,sheet_name='metrics') for f in files]
df = pd.concat(dfs)
def exlude_sheet(excel_list, sheet):
"""
takes two arguments:
1. A list of excel documents
2. The name of your sheet.
3. Returns a single data frame after
working through your list of excel objects.
"""
from xlrd import XLRDError
df_lists = []
for file in excel_list:
try:
file_df = pd.read_excel(file, sheet_name=sheet)
df_lists.append(file_df)
except (XLRDError) as e:
print(f"{e} skipping")
continue
try:
return pd.concat(df_lists)
except ValueError as err:
print("No Objects Matched")
xlsx = [f for f in Path(path_).glob('RMP*WE*')]
df = exlude_sheet(xlsx,sheet='Metrics')
out:
No sheet named <'Metrics'> for doc_1 skipping
No sheet named <'Metrics'> for doc_final skipping
print(df)
Column_A data
0 0 0
1 1 1
2 2 2
3 3 3
4 4 4
exlude_sheet(xlsx,'foobar')
No sheet named <'foobar'> skipping
No sheet named <'foobar'> skipping
No sheet named <'foobar'> skipping
No Objects Matched
我想从一个目录中读取几个excel文件到pandas中,并将它们连接到一个大的数据帧中。不过我还没弄明白。我需要一些关于for循环和构建级联数据帧的帮助:
我想从一个目录中读取几个csv文件到pandas中,并将它们连接到一个大的数据帧中。不过我还没弄明白。以下是我目前掌握的情况: 我想我需要在for循环中得到一些帮助???
我在Laravel 7中使用maatsite的Excel导入库将文件分析和支持数据导入到“分析”数据库表中,它工作得很好。但是,在我选择要导入的Excel文件的视图页面上,我有一个选择下拉和输入文本。我在各自的模型中创建了has很多和属性关系。 处理控制器: 利润进口: profiling_import.blade: 在Excel文件中: 视图: 问题是pemohon、品牌和用户数据没有填入数据库
我在从两个表中检索数据然后列出它们时遇到了一些问题。我想将用户的提要帖子和他们喜欢的活动全部列在一个列表中。 提要-用户帖子表 我想做的是:在活动墙中列出提要和类似用户的活动。 所以它应该输出如下(按时间戳desc排序): “这是用户A的帖子” 我的当前SQL: 然而,我的问题是我不知道如何链接这两个表,因为我的“feed”中的ID与“likes”中的ID不同
我有多个csv文件(每个文件包含N行(例如,1000行)和43列)。 我想把文件夹中的几个csv文件读入pandas,并将它们合并到一个数据帧中。 不过我还没能弄明白。 问题是,数据帧的最终输出(即,)将所有列(即43列)合并到代码的一列(见附图)屏幕截图中 选定行和列的示例(文件一) 选择的行和列(文件二)Client_IDClient_NamePointer_of_Bins日期权重C00000
目前,我只能阅读一个excel文档,并用我得到的代码编写相同的文档。现在我想读取多个excel文档并将数据写入其中。现在我得到了一个清晰的代码,这样做到一个文档,但这不是我想要的。我理解我目前得到的代码的结构,所以我更喜欢继续使用它。如何使用函数和函数来实现这一点? 这是我到目前为止所拥有的: 不是很好的编码...但它有效...