0 1 2 3 4 5
2015-01-01 2.847222 -5.197222 -13.900000 1.913889 0.872222 3.988889
2015-01-02 3.202778 -6.925000 -15.386111 0.911111 0.858611 4.352778
在上面的数据框中,最左边的列是索引并表示日期时间。如何添加分别代表年,月和日的3列?结果如下:
0 1 2 3 4 5 6 7 8
2015-01-01 2015 1 1 2.847222 -5.197222 -13.900000 1.913889 0.872222 3.988889
2015-01-02 2015 1 2 3.202778 -6.925000 -15.386111 0.911111 0.858611 4.352778
答案 0 :(得分:1)
这是一种方法
更改列名称
In [162]: df.columns = range(3, 9)
In [163]: df
Out[163]:
3 4 5 6 7 8
2015-01-01 2.847222 -5.197222 -13.900000 1.913889 0.872222 3.988889
2015-01-02 3.202778 -6.925000 -15.386111 0.911111 0.858611 4.352778
然后将年,月,日添加到0,1,2列
In [164]: df[0] = df.index.year
In [165]: df[1] = df.index.month
In [166]: df[2] = df.index.day
In [167]: df
Out[167]:
3 4 5 6 7 8 0 \
2015-01-01 2.847222 -5.197222 -13.900000 1.913889 0.872222 3.988889 2015
2015-01-02 3.202778 -6.925000 -15.386111 0.911111 0.858611 4.352778 2015
1 2
2015-01-01 1 1
2015-01-02 1 2