Python - Pandas 删除 excel 中的特定行/列

onl*_*lyf 2 python row pandas data-cleaning

我有以下 excel 文件,我想清理特定的行/列,以便我可以进一步处理该文件。

在此处输入图片说明

我试过这个,但我没有设法删除任何空行,我只设法从那些包含数据的行中删除。在这里,我试图只保存第三行及以后的数据。

xl = pd.ExcelFile("MRD.xlsx")
df = xl.parse("Sheet3")
df2 = df.iloc[3:]

writer4 = pd.ExcelWriter('pandas3.out.no3lines.xlsx', engine='xlsxwriter')
table5 = pd.DataFrame(df2)
table5.to_excel(writer4, sheet_name='Sheet1')
writer4.save()
Run Code Online (Sandbox Code Playgroud)

我特别想删除第 1、3 行(空行)和第一列,以便我可以旋转它。有没有办法做到这一点?谢谢你。

fur*_*ras 5

您可以使用drop(...)删除行和drop(..., axis=1)删除列

data = [
    ['', '', '', ''],
    ['', 1, 2, 3],
    ['', '', '', ''],
    ['', 7, 8, 9],
]

import pandas as pd

df = pd.DataFrame(data)

# drop first column - [0]
df = df.drop(0, axis=1)

# drop first and third row - [0,2]
df = df.drop([0,2])

print(df)
Run Code Online (Sandbox Code Playgroud)

前:

  0  1  2  3
0           
1    1  2  3
2           
3    7  8  9
Run Code Online (Sandbox Code Playgroud)

后:

   1  2  3
1  1  2  3
3  7  8  9
Run Code Online (Sandbox Code Playgroud)