首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python数据数据时频从'5S‘中提取5

python数据数据时频从'5S‘中提取5
EN

Stack Overflow用户
提问于 2022-06-03 16:32:57
回答 2查看 49关注 0票数 1

我使用pd.inter_freq(df.index)来知道数据的频率。我的问题是,如何从字符串中提取数字。代码:

代码语言:javascript
复制
xdf = pd.DataFrame({'data':range(0,6)},index=pd.date_range('2022-06-03 00:00:00', '2022-06-03 00:00:25', freq='5s'))
print(pd.infer_freq(xdf.index))
# time frequency
tf = int(pd.infer_freq(xdf.index))

预期产出

代码语言:javascript
复制
tf = 5

目前的产出:

代码语言:javascript
复制
ValueError: invalid literal for int() with base 10: '5S'
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-06-03 16:34:23

您希望访问n属性的freq

代码语言:javascript
复制
>>> xdf.index.freq.n
5

若要查找最频繁的频率,请使用mode

代码语言:javascript
复制
>>> xdf.index.to_series().diff().dt.seconds.mode()
5
票数 2
EN

Stack Overflow用户

发布于 2022-06-03 16:36:32

与其解析pd.infer_freq()的输出,不如直接从DatetimeIndex.freq读取数字:

代码语言:javascript
复制
>>> pd.infer_freq(xdf.index)
'5S'

>>> xdf.index.freq
<5 * Seconds>

>>> xdf.index.freq.n
5

>>> xdf.index.freq.name
'S'
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72492622

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档