2015-10-06 61 views
0

我有一個.csv文件,包括訂單報價和交易報價高頻數據。以下是第13行60萬線數據集的例子:(抱歉格式,複製/粘貼不適合在一行中的所有列,因此我已經間隔出來)忽略某些.csv文件的某些行不少於沒有。的列和讀其餘

1442527200000750850 11539422 15110 1 1 15120 4 3 15105 1 1 15125 17 2 15100 4 3 15130 8 2 15095 7 6 15135 3 1 15090 33 3 15140 3 1 15085 1 1 15145 4 4 15080 2 1 15150 2 2 15075 2 2 15160 2 2 15070 1 1 15165 3 2 0 0 0 15170 6 1 

1442527200000750850 11539422 15110 1 1 15120 4 3 15105 1 1 15125 17 2 15100 4 3 15130 8 2 15095 7 6 15135 3 1 15090 33 3 15140 3 1 15085 1 1 15145 4 4 15080 2 1 15150 2 2 15075 2 2 15160 2 2 15070 1 1 15165 3 2 15060 3 3 15170 6 1 

1442527200000750850 11539422 15110 1 1 15120 2 2 15105 1 1 15125 17 2 15100 4 3 15130 8 2 15095 7 6 15135 3 1 15090 33 3 15140 3 1 15085 1 1 15145 4 4 15080 2 1 15150 2 2 15075 2 2 15160 2 2 15070 1 1 15165 3 2 15060 3 3 15170 6 1 

1442527200024857519 11539479 15115 1 1 15120 2 2 15110 1 1 15125 17 2 15105 1 1 15130 8 2 15100 4 3 15135 3 1 15095 7 6 15140 3 1 15090 33 3 15145 4 4 15085 1 1 15150 2 2 15080 2 1 15160 2 2 15075 2 2 15165 3 2 15070 1 1 15170 6 1 

1442527200024960184 11539480 15115 2 2 15120 2 2 15110 1 1 15125 17 2 15105 1 1 15130 8 2 15100 4 3 15135 3 1 15095 7 6 15140 3 1 15090 33 3 15145 4 4 15085 1 1 15150 2 2 15080 2 1 15160 2 2 15075 2 2 15165 3 2 15070 1 1 15170 6 1 

1442527200025091242 11539482 15115 2 2 15120 2 2 15110 1 1 15125 17 2 15105 1 1 15130 8 2 15100 4 3 15135 3 1 15095 7 6 15140 3 1 15090 33 3 15145 4 4 15085 1 1 15150 2 2 15080 2 1 15160 2 2 15075 2 2 15165 3 2 15070 1 1 15170 7 2 

1442527200060240623 11539555 15115 2 2 15120 2 2 15110 1 1 15125 17 2 15105 1 1 15130 8 2 15100 4 3 15135 3 1 15095 7 6 15140 3 1 15090 33 3 15145 4 4 15085 1 1 15150 2 2 15080 2 1 15160 2 2 15075 3 3 15165 3 2 15070 1 1 15170 7 2 

1442527200065644806 11539556 15115 2 2 15120 2 2 15110 1 1 15125 17 2 15105 1 1 15130 8 2 15100 4 3 15135 4 2 15095 7 6 15140 3 1 15090 33 3 15145 4 4 15085 1 1 15150 2 2 15080 2 1 15160 2 2 15075 3 3 15165 3 2 15070 1 1 15170 7 2 

1442527200088944431 11539565 15115 2 2 15120 2 2 15110 1 1 15125 17 2 15105 1 1 15130 8 2 15100 4 3 15135 4 2 15095 7 6 15140 3 1 15090 33 3 15145 4 4 15085 2 2 15150 2 2 15080 2 1 15160 2 2 15075 3 3 15165 3 2 15070 1 1 15170 7 2 

1442527200088944431 11539565 15115 2 2 15120 2 2 15110 1 1 15125 17 2 15105 1 1 15130 8 2 15100 4 3 15135 4 2 15095 7 6 15140 3 1 15090 33 3 15145 4 4 15085 2 2 15150 2 2 15080 2 1 15160 2 2 15075 2 2 15165 3 2 15070 1 1 15170 7 2 

1442527200323230870 11539621 15115 3 3 15120 2 2 15110 1 1 15125 17 2 15105 1 1 15130 8 2 15100 4 3 15135 4 2 15095 7 6 15140 3 1 15090 33 3 15145 4 4 15085 2 2 15150 2 2 15080 2 1 15160 2 2 15075 2 2 15165 3 2 15070 1 1 15170 7 2 

1442527200323600606 11539622 15115 3 3 15120 1 1 15110 1 1 15125 17 2 15105 1 1 15130 8 2 15100 4 3 15135 4 2 15095 7 6 15140 3 1 15090 33 3 15145 4 4 15085 2 2 15150 2 2 15080 2 1 15160 2 2 15075 2 2 15165 3 2 15070 1 1 15170 7 2 

1442527200324698612 11539623 15120 1 1 

正如你可以看到,在這個例子中的最後一行只有5列,而其他人有更多。只有5列的行是交易執行行,其餘是訂單報價。基本上,我想讀取csv文件,同時省略僅有5列的這些交易行,並閱讀文件的其餘部分,以便我可以開始對報價進行分析。

我嘗試使用read.csv()功能,但我似乎無法弄清楚如何編寫代碼的時候跳過貿易線(5列線)和只讀訂單報價,它讀取的一切,讓我NaN爲貿易線中的空列。我也嘗試打開一個連接,然後使用掃描功能,但又面臨同樣的問題。有沒有一種方法可以將if聲明放在那裏並省略這些行或任何其他方式?

在情況下,其需要的話,該數據的格式被下列:

ORDER_BOOK: (timestamp_in_ns) (feed-sequence-number) x bid_price_in_USD, bid_qty, number_of_bid_orders, ask_price_in_USD, ask_qty, number_of_ask_orders, ..... 

OR

TRADE:  (timestamp_in_ns) (feed-sequence-number) trade_price_in_USD, trade_qty, trade_side (1 for Buy and 2 for Sell, might be 0 if CME doesn't give us this information for some trade) 

有在數據集中沒有報頭和目的通過""

分離

任何幫助將不勝感激。如果您需要更多信息,請告訴我。

+0

好,看什麼和子集之後用'NA's省略線。 – Roland

+0

@Roland。你什麼意思?你可以解釋嗎? – UtdMan

+0

請閱讀[R介紹](https://cran.r-project.org/doc/manuals/R-intro.pdf)。子集應該是最先學習的技術之一。 – Roland

回答

0

您可以使用complete.cases檢測完整行:

X <- read.csv(filename,sep=" ") 
X <- X[-which(!complete.cases(X)),]