创建一个Pandas数据框并将索引命名为一行

时间:2015-07-31 15:43:33

标签: python pandas

我有以下示例。

import pandas as pd

df = pd.DataFrame ({
    'DayOfWeek': ['Mon','Fri','Mon','Tue','Wed','Thu','Thu','Sat','Sun']
})  
dayofweek = pd.DataFrame({'count':df.DayOfWeek.value_counts()})
dayofweek.index.name = 'Id'

我想知道的是,如何将最后两行代码写入一行?我想在 pd.DataFrame(...)

中命名索引

1 个答案:

答案 0 :(得分:0)

试试这个,很脏但是有效:

In [1]: import pandas as pd

In [2]:

In [2]: df = pd.DataFrame ({
   ...:     'DayOfWeek': ['Mon','Fri','Mon','Tue','Wed','Thu','Thu','Sat','Sun']
   ...: })

In [3]: dayofweek = pd.DataFrame({'count':df.DayOfWeek.value_counts()})\
                      .reset_index()\
                      .rename(columns={'index':'Id'})\
                      .set_index('Id')

In [4]: dayofweek
Out[4]:
     count
Id
Mon      2
Thu      2
Sat      1
Tue      1
Fri      1
Sun      1
Wed      1

但我不建议在一行中完成所有这些操作,使用2行更清晰易读。