У меня Excel с 3 листами: валовой, маржа, доход. У каждого из них есть таблица с одинаковыми столбцами и заголовками строк.
Мне нужно:
1) перебрать каждый лист и сохранить в фрейме данных
2) развинтить каждый фрейм данных
3) добавить столбцы значений из каждый кадр в один.
Брутто:
![enter image description here](https://i.stack.imgur.com/aViPe.png)
Маржа:
![enter image description here](https://i.stack.imgur.com/oXVjG.png)
Доход:
![enter image description here](https://i.stack.imgur.com/KUOQ2.png)
Результат должен быть таким:
![enter image description here](https://i.stack.imgur.com/Pc4v5.png)
Если я использую sheet_name=None
, тогда я получаю ошибку:
import pandas as pd
df = pd.read_excel('BudgetData.xlsx', sheet_name=None,index=False)
df_unpv = df.melt(id_vars=['Company'], var_name ='Month', value_name = 'Gross Revenue')
print(df_unpv)
Ошибка, которую я получаю:
AttributeError Traceback (most recent call last)
<ipython-input-60-ee1791c449b1> in <module>
1 import pandas as pd
2 df = pd.read_excel('BudgetData.xlsx', sheet_name=None,index=False)
----> 3 df_unpv = df.melt(id_vars=['Company'], var_name ='Month', value_name = 'Gross Revenue')
4 df_unpv
5
AttributeError: 'collections.OrderedDict' object has no attribute 'melt'
Файл Excel с образцами данных можно найти здесь: https://www.dropbox.com/s/9dsnylng70t5a8i/Count%20Open%20and%20Closed%20at%20Point%20of%20time.pbix?dl=0