如何解决根据时间和Pandas中的字符串比较功能对行进行分组
我有一个数据框,我想根据时间差异和字符串之间的差异将数据分组为行。原始数据框实际上如下所示:
import datetime
import pandas as pd
data = {
'timestamp': [
datetime.datetime(2020,10,12,0),datetime.datetime(2020,2),10),12),30),1,3,40),0)
],'row_number': [i for i in range(10)],'input': [
'hello','hello w','hello wor','this is a','hello world','this is a new','hello','hello world'
]
}
pd.DataFrame(data=data)
此数据帧需要根据前面的行之一之间的差值不超过60秒且字符串字符之间的差值不超过4秒来分组,以便将行按以下方式分组。我现在已经将行格式化为单独的数据帧,但理想情况下将是要上载到BigQuery中的列表的列表。
data = {
'timestamp': [
datetime.datetime(2020,30)
],'row_number': [0,2,4],'hello world'
]
}
pd.DataFrame(data=data)
data = {
'timestamp': [
datetime.datetime(2020,'row_number': [3,5],'input': [
'this is a',]
}
pd.DataFrame(data=data)
data = {
'timestamp': [
datetime.datetime(2020,'row_number': [6,7,8,9],'hello world'
]
}
pd.DataFrame(data=data)
我已经有了字符串比较功能,但是不确定如何使用apply将其应用于熊猫滚动窗口函数,或者这是否是最有效的方式。
df.rolling('60s').apply()
我目前使用字典列表进行比较,但是当行数为〜100k且有很多组只有一行时,遍历所有比较会花费很长时间。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。