5

次のデータフレームを持つデータ(mydataと呼びましょう)があります。

datetime|side(0=Bid,1=Ask)| distance(1:best price, 2: 2nd best, etc.)| price
2008/01/28,09:11:28.000,0,1,1.6066
2008/01/28,09:11:28.000,0,2,1.6065
2008/01/28,09:11:28.000,0,3,1.6064
2008/01/28,09:11:28.000,0,4,1.6063
2008/01/28,09:11:28.000,0,5,1.6062

2008/01/28,09:11:28.000,1,1,1.6067
2008/01/28,09:11:28.000,1,2,1.6068
2008/01/28,09:11:28.000,1,3,1.6069
2008/01/28,09:11:28.000,1,4,1.6070
2008/01/28,09:11:28.000,1,5,1.6071

minAsk-maxBid を計算したいのですが、この場合は 1.6067-1.6066 です。私は自分のデータ全体に対してこれを行いたいです。「by」を使用することを考えていましたが、この単純なコードを使用しても:

by(mydata,mydata$datetime, min(mydata$price)) 

各ブロックの最低価格だけを見つけるには、次のエラーが表示されます: FUN(X[[1L]], ...) のエラー: 関数 "FUN" が見つかりませんでした

それを実装する方法はありますか?ddplyおそらく別の機能を使用する必要がありますか?

4

2 に答える 2