将excel文件的n行到n + x行加载到python中的数据帧中,其中n和x是预定义的

时间:2019-05-14 09:34:00

标签: python pandas dataframe

我有4500个文件,每个文件都有大约44000行,我必须一个接一个地加载所有文件以计算一些值。但是,我感兴趣的是只有20000行从12000行开始。是否有一种方法可以忽略前12000行,而仅加载接下来的20000行?

不允许文件突变,因此我不能考虑从所有这些文件中删除前12000行,并使用pd.read_csv('File_name.csv',nrows = 20000)

df = pd.read_excel("folder_name" + '/{}'.format(file_name),  
                   engine='xlrd', index_col=False)  
df = df[df.Header_1 == 'Common_Value_Shared_By_Interested_Rows']  

上面的代码所做的是加载Excel的所有44000行,然后根据Header_1中的列值进行过滤。

但是我想知道是否可以在不必先加载所有内容的情况下做同样的事情。

2 个答案:

答案 0 :(得分:1)

尝试:

df = pd.read_excel("folder_name" + '/{}'.format(file_name), engine='xlrd', index_col=False, skiprows=12000, nrows=20000)

编辑:仅选择20000 rows,我们可以使用nrows

答案 1 :(得分:0)

结合使用skiprowsskipfooter

文档:read_excel

如果知道所需的列,则可能应该使用usecols