r - 在R中的多维数组中删除一层命名
问题描述
比较以下数组:
> str(arr)
num [1:77, 1:65, 1:40] NA NA NA NA NA NA NA NA NA NA ...
- attr(*, "dimnames")=List of 3
..$ : chr [1:77] "2020-04-15T00:29:00.000000000+00:00" "2020-04-15T00:33:00.000000000+00:00" "2020-04-15T00:43:00.000000000+00:00" "2020-04-15T00:48:00.000000000+00:00" ...
..$ : chr [1:65] "1" "2" "3" "4" ...
..$ : chr [1:40] "v_1" "v_2" "v_3" "v_4" ...
> str(arr1)
num [1:77, 1:65, 1:40] NA NA NA NA NA NA NA NA NA NA ...
- attr(*, "dimnames")=List of 3
..$ mynano : chr [1:77] "2020-04-15T00:29:00.000000000+00:00" "2020-04-15T00:33:00.000000000+00:00" "2020-04-15T00:43:00.000000000+00:00" "2020-04-15T00:48:00.000000000+00:00" ...
..$ mycat : chr [1:65] "1" "2" "3" "4" ...
..$ values : chr [1:40] "v_1" "v_2" "v_3" "v_4" ...
可以看到arr1
多了一层名字,即:mynano
, mycat
, and values
, 而arr
没有。
如何从中删除这些名称arr1
,同时将暗名称保留在其下方,如arr
?
解决方案
在您的第二个示例中,dimnames
您的数组是一个命名列表,因此您必须删除此列表的名称:
names(dimnames(arr1)) <- NULL
推荐阅读
- android - 如何使用 JNA 调用 C 的 _IOR 宏?
- casting - Non-primitive to primitive cast in Rust?
- c - 链表中按姓名排序的条目
- database - 在 CDX 存在时使用 INDEX ON 进行 VFP 索引和保存
- php - PHP / HTML / CSS 图像轮播出现在 Wordpress 头版
- rust - 在 Diesel 中关联三个表(多对多关系)的标准模式是什么?
- java - 如何将双精度类型值添加到 JTable 行?
- java - change type of object into type I created in java
- android - 获取系统属性的有效替代反射
- angular - 角垫选择下拉返回一个未定义的值