pandas如何读取xlsx不要第一行和最后一行

不要表头和最后的合计行!

整理消费数据的时候,需要进行多日xlsx文件合并(每日一个xlsx文件),文件有第一行的表头,和最后一行的合计。
若要合并一个月的文件(30个xlsx)直接使用concat就会带有多个表头和多个合计行。

import pandas as pd

df = pd.read_excel('统计.xls',sheet_name='Sheet1',header=1)     ##header可以指定那一行为标题,这样可以把表头给去掉
df = df[  df['序号'].str.contains('总计') != True ]                #序号这一列把含有特殊字符串的行过滤掉,也可以理解成最后一行求和的行
print(df)

下图是 统计.xls 的数据样例

img

我使用切片的方式,也同样解决了,还简单一些。


```python
import os
import pandas as pd

path = r'/Users/Minute/Downloads/XXXXX'
df4 = []
for root, dirs, files in os.walk(path):
    for file in files:
        file_path = os.path.join(root, file)
        df1 = pd.read_excel(file_path)
        df2 = df1[:-1]
        df3 = df2[2:]
        df4.append(df3)
        # print(df2.head())
data = pd.concat(df4)
data.to_csv(r'/Users/Minute/Downloads/无首尾concat_1.csv', index=False)
print(data.head())

```