gpt4 book ai didi

r - r中的数据表中的“.N”是什么意思?

转载 作者:行者123 更新时间:2023-12-03 20:20:21 26 4
gpt4 key购买 nike

我有一个数据表dt

library(data.table)
dt = data.table(a=LETTERS[c(1,1:3)],b=4:7)

a b
1: A 4
2: A 5
3: B 6
4: C 7


dt[, .N, by=a]的结果是

   a N
1: A 2
2: B 1
3: C 1


我知道 by=aby="a"的意思是按 a列分组,而 N列是 a重复次数的总和。但是,我没有使用 nrow(),但是得到了结果。 .N不仅仅是列名吗?我在R中找不到 ??".N"的文档。我尝试使用 .K,但是它不起作用。 .N是什么意思?

最佳答案

.N视为实例数量的变量。例如:

dt <- data.table(a = LETTERS[c(1,1:3)], b = 4:7)

dt[.N] # returns the last row
# a b
# 1: C 7


您的示例返回一个新变量,其中包含每种情况下的行数:

dt[, new_var := .N, by = a]
dt
# a b new_var
# 1: A 4 2 # 2 'A's
# 2: A 5 2
# 3: B 6 1 # 1 'B'
# 4: C 7 1 # 1 'C'


有关data.table的所有特殊符号的列表,另请参见 https://www.rdocumentation.org/packages/data.table/versions/1.10.0/topics/special-symbols

关于r - r中的数据表中的“.N”是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33102714/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com