我想用''替换空格。'然后通过去除前2个字符来缩短数值的长度(例如2022(。
数据
df=
ID Date
AA Q1 2022
BB Q4 2024
CC Q2 2025
CC Q3 2025
CC Q1 2021
DD Q2 2021
所需
ID Date
AA Q1.22
BB Q4.24
CC Q2.25
CC Q3.25
CC Q1.21
DD Q2.21
执行
1.将空白替换为".">
df.Date.fillna(value=., inplace=True)
2.删除年份的前两位数字
df["Date"].str[2:]
3.可能是concat
欢迎提出任何建议。
使用带有正则表达式模式(regex=True
(的Series.replace
:
df['Date'] = df['Date'].replace(r'sd{2}','.',regex=True)
print(df)
ID Date
0 AA Q1.22
1 BB Q4.24
2 CC Q2.25
3 CC Q3.25
4 CC Q1.21
5 DD Q2.21
解释正则表达式模式sd{2}
:
s
匹配任何空白字符d
与数字匹配{2}
与前一个令牌(即数字(正好匹配2次