【发布时间】:2018-03-25 02:30:42
【问题描述】:
我运行了以下脚本 (https://github.com/FXCMAPI/FXCMTickData/blob/master/TickData34.py) 并在末尾添加了以下几行来下载文件:
output_folder = '/Users/me/Documents/data/forex/'
target_folder = os.path.join(output_folder, symbol, year)
os.makedirs(target_folder, exist_ok=True)
with open(os.path.join(target_folder, str(i) + '.csv'), 'wb') as outfile:
outfile.write(data)
然后,我尝试使用 pandas 打开文件,如下所示:
x = pd.read_csv('/Users/me/Documents/data/forex/EURUSD/2015/29.csv')
但是,这就是我得到的:
In [3]: x.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 2415632 entries, 0 to 2415631
Data columns (total 3 columns):
D float64
Unnamed: 1 float64
Unnamed: 2 float64
dtypes: float64(3)
memory usage: 55.3 MB
In [4]: x.dropna()
Out[4]:
Empty DataFrame
Columns: [D, Unnamed: 1, Unnamed: 2]
Index: []
为什么数据框是空的?
如果我在 TextEdit 上打开文件,前几行实际上是这样的:
DateTime,Bid,Ask
07/19/2015 21:00:15.469,1.083,1.08332
07/19/2015 21:00:16.949,1.08311,1.08332
07/19/2015 21:00:16.955,1.08311,1.08338
【问题讨论】:
-
在删除空值之前,数据框不为空。您需要使用 parse_dates = 'DateTime'