[英]str.replace function raise error that an integer is required
我想问我遇到的问题。 首先,让我告诉你我的整个代码
df1 = pd.read_excel(r'E:\내논문자료\골목상권 데이터\이태원로 54길 내용뺀거.xlsx' , sheetname='first_day_datas')
df1.registerdate= df1.registerdate.astype(str) # 칼럼 속성 바꾸기
df2 = pd.to_datetime(df1['registerdate'].str[0:10])
df3 = df2['registerdate'].str.replace('-', '').str.strip()
我只想更改registerdate列中的字符串。 当我把print(df2.head(3))。 它显示如下
0 2016-10-11
1 2016-10-15
2 2016-10-15
所以我想用''代替' - '。 我输入代码并弹出'TypeError:需要一个整数'。
df2 = pd.to_datetime(df1['registerdate'].str[0:10])
# \____________/
# returns a series
df2['registerdate'].str.replace('-', '').str.strip()
#\_______________/
# is only something
# if 'registration
# is in the index
# this is probably the source of your error
此时df2
是pd.Series
of Timestamps
。 格式yyyy-mm-dd
就是Timestamp
的显示方式。 要将其显示为yyyymmdd
,请执行此操作
df2.dt.strftime('%Y%m%d')
0 20160331
1 20160401
2 20160402
3 20160403
4 20160404
Name: registerdate, dtype: object
似乎df2没有列'registerdate',它是一个时间戳列表。 我认为df2.map(lambda x: x.strftime('%Y%m%d')
可以将时间戳转换为您需要的格式。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.