这里我有一个数据框,它只显示年份的最后两位数:
YEAR DWT RFR 10 6571 1200 11 6421 1200 98 7786 3000 02 9191 1250
我想把它们作为一个完整的年份值,有什么解决方案吗?预期产出:
YEAR DWT RFR 2010 6571 1200 2011 6421 1200 1998 7786 3000 2002 9191 1250
niknxzdl1#
这是你所期望的吗?本年度可以作为轴心。
>>> pivot_year = pd.Timestamp.now().year % 100 >>> df['YEAR'].astype(int) \ .apply(lambda y: y + (2000 if y <= pivot_year else 1900)) 0 2010 1 2011 2 1998 3 2002 Name: YEAR, dtype: int64
sd2nnvve2#
您可以通过以下方式实现这一点:
from datetime import datetime import pandas as pd df1 = pd.DataFrame({'YEAR': ['10', '11', '98', '02'], 'DWT': [6571, 6421, 7786, 9191], 'RFR': [1200, 1200, 3000, 1250]}) df1['YEAR'] = [datetime.strptime("01/01/" + yr, "%m/%d/%y").year for yr in df1['YEAR']] print(df1) YEAR DWT RFR 0 2010 6571 1200 1 2011 6421 1200 2 1998 7786 3000 3 2002 9191 1250
2条答案
按热度按时间niknxzdl1#
这是你所期望的吗?本年度可以作为轴心。
sd2nnvve2#
您可以通过以下方式实现这一点: