如何在R中使用length()函数(4个例子)

3,224 阅读2分钟

你可以使用R中的length() 函数来计算向量、列表和其他对象的长度。

这个函数使用以下基本语法:

length(x)

其中:

  • x:要计算长度的对象的名称

下面的例子说明了如何在不同情况下使用这个函数。

例子1:对Vector使用length()函数

下面的代码显示了如何使用**length()**函数来计算一个向量中的元素数:

#create vector
my_vector <- c(2, 7, 6, 6, 9, 10, 14, 13, 4, 20, NA)

#calculate length of vector
length(my_vector)

[1] 11

我们可以看到,这个向量总共有11个元素。

请注意,length()也计算NA值。

为了在计算向量的长度时排除NA值,我们可以使用以下语法:

#create vector
my_vector <- c(2, 7, 6, 6, 9, 10, 14, 13, 4, 20, NA)

#calculate length of vector, excluding NA values
sum(!is.na(my_vector))

[1] 10

我们可以看到,该向量有10个非NA值的元素。

例2: 在List中使用length()

下面的代码显示了如何使用length() 函数来计算整个列表的长度以及列表中某个特定元素的长度:

#create list
my_list <- list(A=1:5, B=c('hey', 'hi'), C=c(3, 5, 7))

#calculate length of entire list
length(my_list)

[1] 3

#calculate length of first element in list
length(my_list[[1]])

[1] 5

从输出结果中我们可以看到,这个列表总共有3 个元素,我们可以看到列表中的第一个元素的长度是5

例3: 在数据框中使用length()函数

如果我们在 R 中对数据框使用length() 函数,它将返回数据框中的列数:

#create data frame
df <- data.frame(team=c('A', 'B', 'B', 'B', 'C', 'D'),
                 points=c(10, 15, 29, 24, 30, 31))

#view data frame
df

  team points
1    A     10
2    B     15
3    B     29
4    B     24
5    C     30
6    D     31

#calculate length of data frame (returns number of columns)
length(df)

[1] 2 

如果我们想计算行的数量,我们可以使用nrow()函数:

#calculate number of rows in data frame
nrow(df)

[1] 6

这告诉我们,数据框中总共有6行。

例4: 在字符串中使用length()函数

如果我们在R语言中对一个字符串使用length() 函数,它通常只返回一个值1:

#define string
my_string <- "hey there"

#calculate length of string
length(my_string)

[1] 1

要真正计算一个字符串中的字符数,我们可以使用ncar()函数来代替:

#define string
my_string <- "hey there"

#calculate total characters in string
nchar(my_string)

[1] 9

这告诉我们,字符串中总共有9个字符,包括空格。

其他资源

下面的教程解释了如何在R中执行其他常见的操作:

如何在R中按组计算观察值
如何在R中计算行的数量
如何在R中选择随机行