2016-05-01 53 views
0

在標準的R,我可以使用類似以下的指數選擇:如何通過bigr.frame中的索引進行選擇?

newdf <- df[1:4,] 

但是,如果我嘗試在bigr.frame上面,我得到:

Error: BigR[bigr.frame.[]]: The given filtering condition must be a logical bigr.vector. 

的文檔[ {bigr}如下:

說明

過濾行和數據集

用法

「[」(X,I,J,...,滴= TRUE)

參數

的項目列x(bigr.frame或bigr.matrix)被操作的對象。如果x是 bigr.frame或bigr.csv.matrix,則支持過濾和投影 。如果x是bigr.binary.matrix,則只支持投影 。

(bigr.vector),表示過濾 條件(僅用於bigr.frame和bigr.matrix對象)

Ĵ(字符或整數)表示的列向量的邏輯運算預計爲 。這些可以是列ID(即,整數)或列名 (即,字符)在突出一個單個塔的情況下

,參數降確定 結果是否應該是一個bigr.vector(降= TRUE)或bigr.frame (drop = FALSE)。默認值是drop = TRUE。

派生bigr.frame,bigr.matrix,或bigr.vector

另請參見

bigr.frame bigr。矩陣

實例

air[air$UniqueCarrier %in% c("UA", "HA"), c(1,2,3,5:9)]

air[, c("Origin", "Dest")]

air[air$Dest == "SFO", 17]

class(air[, 17, drop=FALSE])

class(air[, 17, drop=TRUE])

我不清楚我是否可以按索引選擇。這可能嗎?怎麼樣?

回答

1

可以使用as.data.frame功能。

參見:https://www.ibm.com/support/knowledgecenter/SSPT3X_4.0.0/com.ibm.swg.im.infosphere.biginsights.bigr.doc/doc/frame_as.data.frame.html?lang=en

airfile < - 執行。系統( 「擴展數據」, 「airline.zip」,包= 「bigr」)

airfile < - 解壓縮(airfile,exdir = TEMPDIR() )

airR < - read.csv(airfile,stringsAsFactors = F)

空氣< - as.bigr.frame(airR)

airdf < - as.data.frame(空氣)

newdf < - airdf [1:4,]

newdf

1

第一個參數期望邏輯條件,第二個參數表示列。

你正在尋找同樣的功能可以通過頭(幀,無#OfRows)完成

airfile <- system.file("extdata", "airline.zip", package="bigr") 
airfile <- unzip(airfile, exdir = tempdir()) 
airR <- read.csv(airfile, stringsAsFactors=F) 
air <- as.bigr.frame(airR) 
head(air, 4) 

參見:https://www.ibm.com/support/knowledgecenter/SSPT3X_4.0.0/com.ibm.swg.im.infosphere.biginsights.tut.doc/doc/tut_Less_BigR_Stat2.html

+0

感謝Nisanth,頭會爲一些使用情況下工作,但不是全部。您能否提供第一種方法的示例,例如選擇airfile數據集的第3:4行? –

相關問題