使用 get_data_yahoo
从雅虎下载股票数据后,我想访问每一行的时间...我该怎么做?
我想到的一种方法是:
it = stock.iterrows()
st0 = it.next()
resultIWant = st0[0].value # this gives what I want (almost)
print resultIWant
编辑:
所以基本上我想要像 stock['Open']
这样的东西,但是对于时间来说,像 stock['Time']
这样的东西是理想的..
有人要求输出 .head
Open High Low Close Volume Adj Close
Date
2012-04-03 2.06 2.09 2.01 2.08 463200 2.08
2012-04-04 2.04 2.05 2.01 2.02 335600 2.02
函数的预期输出:
print find_time(stock,2) # function I'm looking for
1333497600000000000 # resulting output
预期输出是从数组中每个日期的最后一个纪元开始的时间或以其他方式获取每个条目的时间。我给出的示例代码给出了我想要的结果,但是如果我想访问第 4 个元素,唯一的方法是 .next
迭代器 4 次,这似乎很糟糕方法。
第一个问题:有没有更明显的方法,我正在做的似乎不是最好的方法。
第二个问题:结果的单位是什么?我认为它是纳秒但不确定...
最佳答案
时间戳有一个time
方法:
In [1]: t = pd.Timestamp('200101011300')
In [2]: t
Out[2]: <Timestamp: 2001-01-01 13:00:00>
In [3]: t.time()
Out[3]: datetime.time(13, 0)
值
是自 1970 年 1 月 1 日午夜以来的纳秒,即 unix time * 10 ** 9:
In [4]: t.value
Out[4]: 978354000000000000
关于python - 如何访问 DataFrame Pandas 中的时间戳?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15792018/