将一个值的PeriodIndex应用于熊猫数据框的所有行

时间:2018-10-30 11:47:00

标签: python-3.x pandas

假设我们有以下初始数据帧

branch_id    location                  employee

1            City, US    ...           26
2            City, US    ...           14
3            City, UK    ...           28

它没有索引,我需要将该数据帧的所有记录移到仅包含一个值的索引(PeriodIndex)中。

                      branch_id     location                  employee
date                           
2018-10-22/2018-10-28 1             City, US    ...           26
                      2             City, US    ...           14
                      3             City, UK    ...           28

如何用熊猫实现它?

1 个答案:

答案 0 :(得分:1)

您可以在数据框中创建具有相同值(示例中的date)的虚拟列2018-10-22/2018-10-28,如下所示:

df['date'] = '2018-10-22/2018-10-28'

然后,您可以使用set_index将此列作为数据框的索引:

df = df.set_index('date')

请考虑以下数据框:

In [80]: df
Out[80]: 

 A  B  C  D  E
 2  6  5  4  1
 1  2  8  4  9
 3  4  2  9  3

为其添加了虚拟列日期:

In [84]: df['date'] = '2018-10-22/2018-10-28'
In [85]: df
Out[85]: 
   A  B  C  D  E                   date
0  2  6  5  4  1  2018-10-22/2018-10-28
3  1  2  8  4  9  2018-10-22/2018-10-28
6  3  4  2  9  3  2018-10-22/2018-10-28

现在,将date设置为数据框的索引:

In [87]: df = df.set_index('date')

In [88]: df
Out[88]: 
                       A  B  C  D  E
date                                
2018-10-22/2018-10-28  2  6  5  4  1
2018-10-22/2018-10-28  1  2  8  4  9
2018-10-22/2018-10-28  3  4  2  9  3

现在,所有行都具有相同的索引。让我知道是否有帮助。