因此,我有很多原始貿易數據,我想要解決這個問題,因此我想將其更改爲olhc格式,以便更輕鬆地進行分析。所以,在迅速研究這個我又找到在python大熊貓,更具體地說,這個命令將貿易數據重新抽樣爲olhc格式
df.resample('60s', how={'price': 'ohlc'})
所以,我有我的CSV文件中的所有數據,所以什麼IM正在運行的是
df=pd.read_csv("xao.csv")
df.resample('60s', how={'price': 'ohlc'})
,如果即時消息糾正這是正確的格式和命令,我的問題是我相信的時間格式,我不知道如何去改變時間格式在CSV中。
我的CSV是按以下格式
unixtimecode,價格,成交量
所以採樣線是
1419031147 453.3 0.050
究竟什麼是一個簡單的方法去了解從一個轉換時間unix時間戳爲resample代碼的可用時間格式?
所以,感謝尼廷我現在有什麼,我認爲是正確的格式我的時間,運行print df.tail()
產量
Date price volume
824184 2014-12-19 23:19:07 434.9 0.050
824185 2014-12-19 23:19:48 434.7 0.011
824186 2014-12-19 23:19:48 434.9 0.039
824187 2014-12-19 23:20:29 434.9 0.050
824188 2014-12-19 23:21:09 434.9 0.050
我相信這是正確的,但運行df.resample('60s', how={'price': 'ohlc'})
仍然不起作用,它給人的錯誤TypeError: Only valid with DatetimeIndex, TimedeltaIndex or PeriodIndex
,這是爲什麼?
edit2,設法讓它工作。
對於任何人誰通過谷歌/將來認爲這我繼承人的代碼,我用
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
df=pd.read_csv("xao.csv")
df['Date'] = pd.to_datetime(df['Date']*int(1e9))
df.Date=pd.to_datetime(df.Date, unit = 's')
df = df.set_index('Date').astype('float64')
df['price'].resample('60s',how='ohlc')
所以這個問題不是關於重新取樣,而是對正確分析數據文件。您應該編輯標題和問題以反映這一點。 –