Reputation: 4516
I am trying to run sort on the data imported from excel but getting below error. Why after importing into dataframe its saying its ordered dictionary?
-Error:
'OrderedDict' object has no attribute 'sort'
Code:
import pandas as pd
dfs = pd.read_excel("data.xlsx", sheet_name=None)
dfs
data_df = (dfs.sort(['Date','Tank','Time']).groupby(['Date','Tank']))
data_df
DF:
OrderedDict([(u'Sheet1',
Date Time Tank Sales Quantity Delivery
0 2018-01-01 06:30:00 1 100 3444 0
1 2018-01-01 07:00:00 1 200 3144 0
2 2018-01-01 05:30:00 1 100 2900 0
3 2018-01-01 07:30:00 1 200 2800 0
4 2018-01-01 06:30:00 2 50 3000 0
5 2018-01-01 07:00:00 2 100 2950 0
6 2018-01-01 05:30:00 2 150 2800 0
7 2018-01-01 07:30:00 2 100 2704 0
8 2018-01-02 06:30:00 1 100 3444 0
9 2018-01-02 07:00:00 1 200 3144 0
10 2018-01-02 05:30:00 1 100 2900 50
11 2018-01-02 07:30:00 1 200 2800 0
12 2018-01-02 06:30:00 2 50 3000 0
13 2018-01-02 07:00:00 2 100 2950 0
14 2018-01-02 05:30:00 2 150 2800 50
15 2018-01-02 07:30:00 2 100 2704 0)])
Upvotes: 1
Views: 1659
Reputation: 863176
Because parameter sheet_name=None
in read_excel
:
sheet_name : string, int, mixed list of strings/ints, or None, default 0
...
None ->All sheets as a dictionary of DataFrames
Also check specifying sheets
.
So you need no parameter for return first sheetname:
df = pd.read_excel("data.xlsx")
Or specify sheet_name
if necessary:
df = pd.read_excel("data.xlsx", sheet_name='Sheet1')
Upvotes: 2