Home > Blockchain >  Reading through different excel sheets to plot
Reading through different excel sheets to plot

Time:10-06

I am trying to read through multiple sheets within same excel file. I want to plot specific columns for every sheet on same figure but it says that 'Excelfile' has no attribute 'iloc'. Can someone tell me what is wrong here? thank you

df = pd.ExcelFile ('Current parametric sweep_reference.xlsx')

Sheet=df.sheet_names

print(Sheet)

for sheet_names in Sheet:
    
    plt.plot(df.iloc[:,1],iloc[:,9])      

CodePudding user response:

You are not using the data-frame but the sheet-names. You can do the following

dfs = pd.ExcelFile ('Current parametric sweep_reference.xlsx')

for sheet in df.sheet_names: #loop over all sheets
    df = pd.read_excel("Current parametric sweep_reference.xlsx",sheet_name=sheet)
    plt.plot(df.iloc[:,1],df.iloc[:,9])

CodePudding user response:

Your object df is not a pandas DataFrame but an ExcelFile object, which does not support iloc. To use iloc you should first represent the individual sheets as DataFrames, like so:

... 
for sheet_name in Sheet:
    sheet_df = df.parse(sheet_name)

CodePudding user response:

you should use ´pd.read_excel´ for loading your excel file. By providing ´sheet=None´ to ´pd.read_excel´ you load all sheets into a dictionary of dataframes per sheet. Then you can iterate over the sheets as following:

import pandas as pd

sheets = pd.read_excel("'Current parametric sweep_reference.xlsx'", sheet_name=None)
for sheetname, df in sheets.items():
    plt.plot(df.iloc[:,1],df.iloc[:,9])
  • Related