测试列表是否具有 R 中的特定形式
Testing whether a list has a specific form in R
第一次提问,希望我能答对。无论如何,我正在用 R 编写一个函数,它将一个列表作为其参数之一。具体来说,列表需要采用
的形式
list(c(x1,y1),c(x2,y2),...)
换句话说,代表笛卡尔点的二元向量列表。我想做一些错误处理来检测提供的列表是否具有该形式。任何建议表示赞赏。例如:
test <- function(points, ...){
if( test for format goes here){
return("Error: Invalid points list format")
}
main content
}
这些点应该是一个任意长度的列表,每个列表元素都是一个 2 元素数字向量。
你可以试试:
all(lengths(points) == 2L & sapply(points, is.numeric))
两个测试是:
lengths(points) == 2L
每个列表长度是否等于2
sapply(points, is.numeric)
是classnumeric
的每个列表元素。
第一次提问,希望我能答对。无论如何,我正在用 R 编写一个函数,它将一个列表作为其参数之一。具体来说,列表需要采用
的形式list(c(x1,y1),c(x2,y2),...)
换句话说,代表笛卡尔点的二元向量列表。我想做一些错误处理来检测提供的列表是否具有该形式。任何建议表示赞赏。例如:
test <- function(points, ...){
if( test for format goes here){
return("Error: Invalid points list format")
}
main content
}
这些点应该是一个任意长度的列表,每个列表元素都是一个 2 元素数字向量。
你可以试试:
all(lengths(points) == 2L & sapply(points, is.numeric))
两个测试是:
lengths(points) == 2L
每个列表长度是否等于2
sapply(points, is.numeric)
是class
numeric
的每个列表元素。