我正在尝试使用该between_time
功能。我已经将字符串类型time格式化为datetime
dataset['TimeStamp'] = pd.to_datetime(dataset['TimeStamp'],format)
我定义了搜索开始时间和结束时间:
start = datetime.time(9,40,0)
end = datetime.time(10,00,0)
然后我打电话 dataset['TimeStamp'].between_time(start, end)
这是我得到的错误:
TypeError: Index must be DatetimeIndex
请如何解决。谢谢
示例-我使用评论中的信息:
import pandas as pd
import StringIO
import datetime
data = '''time --- value
1984-12-12 14:08:00 --- 1
1984-12-12 14:25:00 --- 2
1984-12-12 14:47:00 --- 4
1984-12-12 16:37:00 --- 3
1984-12-12 16:37:00 --- 9
1984-12-12 16:37:00 --- 5
1984-12-12 17:52:00 --- 3
1984-12-12 17:52:00 --- 7
1984-12-12 19:29:00 --- 2'''
#------------------------------------------------
df = pd.read_csv(StringIO.StringIO(data), sep=' --- ')
df['time'] = pd.DatetimeIndex(df['time'])
print "\nDataFrame:\n", df
print '\nIndex:', type(df.index)
#------------------------------------------------
df.set_index(keys='time', inplace=True)
print "\nDataFrame:\n", df
print '\nIndex:', type(df.index)
#------------------------------------------------
start = datetime.time(14,50,0)
end = datetime.time(18,0,0)
print "\nResult:\n", df['value'].between_time(start, end)
结果:
DataFrame:
time value
0 1984-12-12 14:08:00 1
1 1984-12-12 14:25:00 2
2 1984-12-12 14:47:00 4
3 1984-12-12 16:37:00 3
4 1984-12-12 16:37:00 9
5 1984-12-12 16:37:00 5
6 1984-12-12 17:52:00 3
7 1984-12-12 17:52:00 7
8 1984-12-12 19:29:00 2
Index: <class 'pandas.core.index.Int64Index'>
DataFrame:
value
time
1984-12-12 14:08:00 1
1984-12-12 14:25:00 2
1984-12-12 14:47:00 4
1984-12-12 16:37:00 3
1984-12-12 16:37:00 9
1984-12-12 16:37:00 5
1984-12-12 17:52:00 3
1984-12-12 17:52:00 7
1984-12-12 19:29:00 2
Index: <class 'pandas.tseries.index.DatetimeIndex'>
Result:
time
1984-12-12 16:37:00 3
1984-12-12 16:37:00 9
1984-12-12 16:37:00 5
1984-12-12 17:52:00 3
1984-12-12 17:52:00 7
Name: value, dtype: int64
我使用下面的逻辑来计算python列表中的平均时间增量。 以下是该函数的输入:- 然而,我得到了下面的错误。 在prepare_llog(llog_pd)288 289 result_df[‘输入率’]=\-- ##############################################################################################
下面是我认为基于我看到的javafx示例可以工作的方法,但是在(ctla.match(ke))上出现了一个错误,指向“match”并说“Identifier expected但'match'found”。任何指向具有复杂键事件处理的scalafx示例的链接都将受到赞赏。
问题内容: 我有点着急,所以我只想问一个关于querydsl的快速问题。根据我的研究,查询dsl不支持存储过程,但可以支持数据库功能。我的问题是我们如何使用querydsl调用那些数据库函数? 问题答案: 您可以在查询中使用基于TemplateExpression的任意JPQL语法注入。 例如 如果您使用的是Hibernate 4.3或任何其他符合JPA 2.1的提供程序,则可以使用FUNCTIO
我想知道是否有办法在python代码中使用c函数 例如,在做了我的研究之后,我确实使用. dll文件找到了这个解决方案。但它找不到功能我的代码: 享乐cpp: 使用cmd编译它: g有趣。cpp-o乐趣。动态链接库 使用Python调用函数,ctype: 但是我有这个错误: 回溯(最后一次调用):文件“c:\Users\User.vscode\extensions\ms python.python
问题内容: 我非常想使用Map.computeIfAbsent,但是自从lambdas进入本科以来已经太久了。 几乎 直接来自文档:它给出了做事的旧方法的示例: 和新方法: 但是在他们的示例中,我认为我不太“了解”。我将如何转换代码以使用新的lambda表达方式? 问题答案: 假设您有以下代码: 然后,您将看到消息恰好一次,就像在第二次调用时已经存在该键的值一样。的在λ表达式仅仅是该地图将传递到您
问题内容: 我有以下功能: 现在,我想使用一次执行此功能: 问题是,不能腌制lambda,因此失败了。解决此问题的最简洁的方法是什么? 问题答案: 使用功能对象: 运行您的: