读取Excel文件并跳过空行

2024-07-05 10:59:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个excel表格,包含如下所示的数据,它包含数据列

Rahul     e34   Pradeep  e44  Azhar  t54  
Venkat    r45   Akash    e14  Vipul  r15  Fairo   e45 
Akshay    e44   
Pavan     e24   Asad     t14

当我运行下面的代码时

import pandas as pd
import numpy as np 
df = pd.read_excel (r'C:\\Users\\Kiran\\Desktop\\Data\\Output1.xlsx')
df=pd.DataFrame(np.reshape(df.to_numpy(),(-1,2)))
df.to_excel("Output2.xlsx")

我得到的输出是

     0           1
0   Rahul       e34   
1   Pradeep     e44  
2   Azhar       t54  
3       
4   Venkat      r45   
5   Akash       e14  
6   Vipul       r15  
7   Fairo       e45 
8   Akshay      e44    
9       
10      
11      
12  Pavan       e24   
13  Asad        t14
14      
15     

我需要如下所示的输出

Rahul       e34   
Pradeep     e44  
Azhar       t54     
Venkat      r45   
Akash       e14  
Vipul       r15  
Fairo       e45 
Akshay      e44    
Pavan       e24   
Asad        t14

第1行(0,1)和第1列(0,1,2,3,4…..15)不应与如何删除空白一起出现。谁能给我指路吗。谢谢你的帮助


Tags: dfexcelrahulr15akashvenkatvipult54
1条回答
网友
1楼 · 发布于 2024-07-05 10:59:05

您可以使用index&^df.to_excel()中的{}参数。 在将excel读入DF时也使用header=None。如果不这样做,您将在输出文件中丢失一个观察值

以下是工作代码:

import pandas as pd
import numpy as np 

df = pd.read_excel ('input.xlsx',header=None)
df=pd.DataFrame(np.reshape(df.to_numpy(),(-1,2)))

df.dropna(axis=0,inplace=True)
clean_df=df[:].astype('str').apply(lambda x: x.str.strip())

print(clean_df)

df.to_excel("Output.xlsx",index=False,header=False)

相关问题 更多 >