r - 返回不同大小数组列表中的最大元素数
问题描述
我的目标是编写一个简单的函数,该函数接受不定数量的数组列表(元素可以是字符串或数字),并返回数组中元素最多的元素数。
在列表中:
x <- list(c(1,2,3,4,5),
c(1,2,3),
c(1,2,3,4,5,6,7))
答案是 7,因为第三个数组在列表中具有最大数量的元素。
从概念上讲,我很难将元素计数的想法应用于列表中的单个数组。当我尝试时,如下例所示,我计算所有元素的数量。困难在于我不能使用循环来解决它,只能使用类似sapply()
或内置函数的函数 - 不能从其他库导入或调用。如何计算列表中每个数组的元素数量,然后max()
在其上使用?
listMax <- function(x) {
findMax <- sum(sapply(x,length))
print(findMax)
}
解决方案
您可以使用lengths
计算列表中每个元素的长度,然后使用max
max(lengths(x))
#[1] 7
推荐阅读
- c# - grpc-dotnet 身份验证 jwt 不记名令牌
- python - Python 无服务器函数 Vercel - Next.js
- ssl - 启用 SSL 的 GCP 运行状况检查
- kotlin - 强行打开或以其他方式冒充 Kotlin 中的课程
- python - 创建具有多列的图
- python - 向 Python Flask 服务器发送 HTTP 请求
- google-cloud-automl - 在谷歌云平台«开始培训»被禁用
- javascript - 分配失败 - JavaScript 堆出内存节点 js 读取文件夹中的所有文件
- r - 层次聚类和k均值
- reactjs - 如何将图标动态更改为样式组件