str.replace function raise erorr表示需要一个整数

时间:2016-10-19 02:58:13

标签: python pandas

我想问我遇到的问题。首先, 让我告诉你我的整个代码

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:需要一个整数'蹦出来。 我怎样才能解决这个问题?

2 个答案:

答案 0 :(得分:1)

"0"
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的{​​{1}}。格式pd.Series就是Timestamps显示的方式。要将其显示为yyyy-mm-dd,请执行此操作

Timestamp

答案 1 :(得分:1)

似乎df2没有列' registerdate',它是一个时间戳列表。 我认为df2.map(lambda x: x.strftime('%Y%m%d')可以将时间戳转换为您需要的格式。