[英]Finding the largest values in a data.table
我有一个data.table
:
> x <- data.table(neighborhood = c("a", "b", "c"), cat1 = c(1, 1, 100), cat2 = c(50, 1, 1), cat3 = c(1, 1, 1))
> x
neighborhood cat1 cat2 cat3
1: a 1 50 1
2: b 1 1 1
3: c 100 1 1
>
我想找到较大的值(例如>= 50
。
我没有特定的方式想要查看此内容(这是用于输出),但是可以使用:
> z
neighborhood category value
1: a cat1 50
2: c cat2 100
我一直在动脑筋,但我想不出它的功能。 有什么建议么?
您可以使用melt()
melt(x, "neighborhood")[value >= 50, .SD, keyby = neighborhood]
# neighborhood variable value
# 1: a cat2 50
# 2: c cat1 100
或者,如果您不关心订单,可以使用
melt(x, "neighborhood")[value >= 50]
# neighborhood variable value
# 1: c cat1 100
# 2: a cat2 50
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.