gpt4 book ai didi

Python:将正则表达式应用于以日期时间作为列的数据框

转载 作者:行者123 更新时间:2023-11-30 21:58:27 26 4
gpt4 key购买 nike

我有一个数据框(df)如下

Index     Month     Time       Text_1          Text_2                 Text_3
0 02/2019 19:44:33 aadd@34:9984 (none)\ 62fa6297-f5f5-4c47-8236-4a85cad5e601
STBROWN2-M-26YQ
1 02/2019 19:30:22 58:EF:68:14 (none)\ f933fb2a-4dde-a547-80ca-3b9e6cd29a6d
STBROWN2-M-26YQ

我编写了一个简单的正则表达式,如下

def clean(text):
text = text.lower()
text_clean = re.sub('[^A-Za-z0-9]', ' ', text)
return text_clean

然后我将上述内容应用于df

df.apply(lambda x : clean(x))

我收到以下错误:

AttributeError: ("'Series' object has no attribute 'lower'", 'occurred at index Application')

这可能是因为 MonthTime 列,因为它们是 datetime 对象。

我的问题是:如何在忽略日期时间的情况下应用正则表达式?

最佳答案

使用过滤器选择以文本开头的列

def clean(text):
text = text.str.lower()
text_clean = text.str.replace('[^A-Za-z0-9]', ' ', regex = True)
return text_clean
df.assign(**df.filter(like = 'Text').apply(clean))

关于Python:将正则表达式应用于以日期时间作为列的数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54919245/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com