gpt4 book ai didi

clojure - 如何在 Clojure 中部分展平列表?

转载 作者:行者123 更新时间:2023-12-02 16:58:43 26 4
gpt4 key购买 nike

假设我有一个像这样的数据结构:

[[1 2 3] [4 5 6] [[7 8 9] [10 11 12]]]

我想要的最终结果是:

[[1 2 3] [4 5 6] [7 8 9] [10 11 12]]

是否有任何函数可以自动执行此操作?

基本上,我将 SQL 结果集转换/转换为 CSV,并且有些行将转换为 CSV 中的 2 行。所以我的map函数在正常情况下返回一个向量,但有时返回一个向量的向量。 Clojure.data.csv 仅需要向量列表,因此我需要展平旋转的行。

最佳答案

Mapcat 对于映射很有用,其中每个元素可以扩展为 0 个或多个输出元素,如下所示:

(mapcat #(if (vector? (first %)) % [%]) data)

虽然我不确定 (vector? (first %)) 是否足以测试您的数据。

关于clojure - 如何在 Clojure 中部分展平列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16088414/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com