如何在dataframe的值中添加前缀字符串

gfttwv5a  于 2021-08-20  发布在  Java
关注(0)|答案(2)|浏览(496)

这里我有一个数据框,它只显示年份的最后两位数:

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
niknxzdl

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
sd2nnvve

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

相关问题