Advertisement
Guest User

Untitled

a guest
Dec 23rd, 2019
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.74 KB | None | 0 0
  1. # requires pandas - should work on 0.25.1 version
  2. import pandas as pd
  3.  
  4. def custom_read_excel(path):
  5.     # helper func to find first non-empty row
  6.     def _get_header_offset(df):
  7.         header_offset = 0
  8.         for row in df.iterrows():
  9.             if not all(row[1].isna()):
  10.                 break
  11.             header_offset += 1
  12.         return header_offset
  13.  
  14.     df_init = pd.read_excel(path)
  15.     header_offset = _get_header_offset(df_init)
  16.     increase_by = 0
  17.     if header_offset != 0:
  18.         increase_by = 1
  19.     df = pd.read_excel(path, header=header_offset + increase_by)
  20.     df_dropped_na = df.dropna(how="all", axis=1)
  21.     df_dropped_na = df_dropped_na.set_index(df_dropped_na.columns[0])
  22.  
  23.     return df_dropped_na.unstack().to_dict()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement