小编seq*_*oia的帖子

包含点的嵌套列表的名称(例如“c.2)

如何获取嵌套列表(包含数据框)的叶子的名称

p <- list(a=1,b=list(b1=2,b2=3),c=list(c1=list(c11='a',c12='x'),c.2=data.frame("t"=1)))
Run Code Online (Sandbox Code Playgroud)

成矢量格式:

[[1]]
[1] "a"
[[2]]
[1] "b" "b1"
[[3]]
[1] "b" "b2"
[[4]]
[1] "c" "c1" "c11"
[[5]]
[1] "c" "c1" "c12"
[[6]]
[1] "c" "c.2"
Run Code Online (Sandbox Code Playgroud)

问题是我的列表包含带点的名称(例如“c.2”)。通过使用 unlist,一个 get"c.c.2"并且我(或可能strsplit)无法判断该点是 unlist 的分隔符还是名称的一部分。这就是这个问题的不同之处。

它应该忽略 data.frames。到目前为止,我的方法是从这里改编的,但在以下方面遇到了困难unlist

listNames = function(l, maxDepth = 2) {
  n = 0
  listNames_rec = function(l, n) {
    if(!is.list(l) | is.data.frame(l) | n>=maxDepth) TRUE
    else { 
      n = n + 1
      # print(n) …
Run Code Online (Sandbox Code Playgroud)

r list

8
推荐指数
1
解决办法
104
查看次数

SQL:使用所有可能的组合进行更新

我有关系

+-----+----+
| seq | id |
+-----+----+
|   1 | A1 |
|   2 | B1 |
|   3 | C1 |
|   4 | D1 |
+-----+----+
Run Code Online (Sandbox Code Playgroud)

并希望将其加入 PostgreSQL

+----+-------+
| id | alter |
+----+-------+
| B1 | B2    |
| D1 | D2    |
+----+-------+
Run Code Online (Sandbox Code Playgroud)

所以我得到了所有可能的替换组合(即或多或少替换的笛卡尔积)。所以第1组没有更新,第2组只有B2,第3组只有D2,第4组有B2和D2。

结尾应该像这样,但应该对更多人开放(例如 D1 的额外 D3)

+-------+-----+----+
| group | seq | id |
+-------+-----+----+
|     1 |   1 | A1 |
|     1 |   2 | B1 |
|     1 | …
Run Code Online (Sandbox Code Playgroud)

sql postgresql routes combinatorics variations

5
推荐指数
1
解决办法
245
查看次数

标签 统计

combinatorics ×1

list ×1

postgresql ×1

r ×1

routes ×1

sql ×1

variations ×1