liuhe 发表于 2023-4-25 14:18:35

几个精妙apply mapcar append 操作表 案例

本帖最后由 liuhe 于 2023-4-29 23:51 编辑


(setq lst1 '(1 2 3 4)
      lst2 '(5 6 7 8))
(apply 'append (mapcar 'list lst1 lst2))
(1 5 2 6 3 7 4 8)

(setq m '((0 1 2) (3 4 5) (6 7 8)))
(apply 'mapcar (cons 'list m))
(
    (0 3 6)
    (1 4 7)
    (2 5 8)
)


(setq m '((1 2 3 4) (5 6 7 8)))
(apply 'mapcar (cons 'list m))
(
    (1 5)
    (2 6)
    (3 7)
    (4 8)
)
(apply 'append (apply 'mapcar (cons 'list m)))
(LH:nentseltonentselp
'((0.0393701 0.0 0.0)
    (0.0 0.0393701 0.0)
    (0.0 0.0 0.0393701)
    (16.1693 14.733 0.0)
   )

)
((0.0393701 0.0 0.0 16.1693)
(0.0 0.0393701 0.0 14.733)
(0.0 0.0 0.0393701 0.0)
(0.0 0.0 0.0 1.0)
)
(defun LH:nentseltonentselp (lst / i)
(setq i -1)
(append
    (mapcar
      (function
(lambda (x) (append x (list (nth (setq i (1+ i)) (last lst)))))
      )
      (reverse (cdr (reverse lst)))
    )
    (list (list 0.0 0.0 0.0 1.0))
)
)
(1 5 2 6 3 7 4 8)代码来至于   lee-mac

guosheyang 发表于 2023-4-25 15:29:39

后两个叫做转置矩阵

guankuiwu 发表于 2023-4-25 19:35:23

很强{:1_1:}

Bao_lai 发表于 2023-4-25 22:04:46

这个腻害腻害了

树櫴希德 发表于 2023-4-27 10:43:19

要慢慢细品不懂

紫苏炒黄瓜 发表于 2023-4-28 00:22:21

不错,精简

hhh454 发表于 2023-4-28 12:45:22

代码很简短,处理数据归纳提取的好办法

花开富贵 发表于 2023-8-18 09:07:19

这个是处理增广矩阵的吧,强啊

vbnewer 发表于 2023-8-18 11:43:51

关于apply mapcar lambda总是有些似懂非懂,需要这样类似的例子来帮助理解。
页: [1]
查看完整版本: 几个精妙apply mapcar append 操作表 案例