我正在尝试删除开头为数据的“ 0”
我的数据框看起来像这样
Id Year Month Day
1 2019 01 15
2 2019 03 30
3 2019 10 20
4 2019 11 18
注意:“年”,“月”,“日”列的数据类型为object
我从日期中提取“年”,“月”,“日”列。 我想在每个月初删除“ 0”。
所需的Ouput:
Id Year Month Day
1 2019 1 15
2 2019 3 30
3 2019 10 20
4 2019 11 18
到目前为止我尝试做的事情:
df['Month'].str.lstrip('0')
但这没用。
有解决方案吗?谢谢!
答案 0 :(得分:1)
您可以使用re软件包并在其上应用正则表达式
import re
# Create sample data
d = pd.DataFrame(data={"Month":["01","02","03","10","11"]})
d["Month" = d["Month"].apply(lambda x: re.sub(r"^0+", "", x))
结果:
0 1
1 2
2 3
3 10
4 11
Name: Month, dtype: object
如果您100%认为“月”列将始终包含数字,那么您可以简单地这样做:
d["Month"] = d["Month"].astype(int)