从代码中可以看到,我正在尝试从0间隔到列时间hr1首先等于1:01(或1:01 am)的时间输出表格。我在方括号中hr1等于1:01时如何实现问题。
import pandas as pd
table = pd.read_csv('2019-01-20.csv')
speed = table['speed_mph']
time = table['timestamp']
x = 1
for hr1 in time:
if x < 2:
print(table[0:(hr1='1:01')])
x += 1
答案 0 :(得分:0)
最简单的方法是使用index查找等于1.01
的第一个元素
print(table[0:time.index('1:01')+1])
我在index()
调用的结果中添加了一个以包含该元素。请注意,如果“ 1.01”是列表中的最后一个元素,则将产生一个IndexError
。
如果找不到该元素,index()
将引发一个ValueError
。
请注意,您不应使用time
作为变量名,因为这会掩盖同名的python内置模块。
我也同意上面的评论。简单地猜测语法可能会导致很多时间的浪费。您可能还会发现您偶然地进行了某些工作,但随后又因使用其他数据集而失败。
答案 1 :(得分:0)
table.iloc[:table[table.timestamp == 'your timestamp'].index[0] + 1]
iloc对索引进行切片,table [table.timestamp =='your timestamp']。index [0]返回第一个匹配项的索引,+ 1将其包括到结果中。