簡體   English   中英

在R data.table中使用。()group by時如何更改目標列的類型

[英]How do you change the type of target column when using .() group by in R data.table

這個問題類似於在R中的data.table中按組進行:=時如何更改目標列的類型? 但是,我需要使用.()表示法。

例:

a <- data.table(ID = c("A", "B", "C", "A", "B", "C"), 
                TYPE = c(1, 1, 2, 2, 3, 3), 
                CLASS = c(1, 2, 3, 4, 5, 6))

b <- a[, .(Count = .N, "Failure Count" = sum(CLASS == "2"), 
       "Median DIF" = median(TYPE)), by = ID]

有沒有辦法使用這種不同的符號來做到這一點? 原因是我想創建一個新表,而不是使用:=表示法向現有表中添加一列。

顯然,您所要做的就是在中median()內添加as.numeric() median()

b <- a[, .(Count = .N, "Failure Count" = sum(CLASS == "2"), 
      "Median DIF" = median(as.numeric(TYPE))), by = ID]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM