gpt4 book ai didi

linux - 如何将基于日期的 CSV 文件转换为电子表格?

转载 作者:太空狗 更新时间:2023-10-29 12:25:36 24 4
gpt4 key购买 nike

我有这样一个文件:

100,2015-09-01
100,2015-09-02
105,2015-09-01
645,2017-01-01

它只是一个数字和一个逗号分隔的日期。它有 20000 行。

我想将此文件转换为电子表格(Google、Excel、LibreOffice、任何格式,甚至 CSV),如果每个数字在给定日期出现,它会显示该数字。例如:

ID  | 2015-09-01 | 2015-09-02 | 2017-01-01
----+------------+------------+-----------
100 | YES | YES | NO
105 | YES | NO | NO
645 | NO | NO | YES

我该怎么做?

我在 Linux 上,所以像 sedawk 等命令行实用程序是可用的,并且是自动执行此操作的首选方法。

最佳答案

可以使用 AWK 使其工作。

awk -F "," '{
numbers[$1]
dates[$2]
number_date[$1,$2]
} END {
for (number in numbers) printf ";%s", number;
printf "\n"
for (date in dates) {
printf "%s", date
for (number in numbers)
if ((number SUBSEP date) in number_date) printf ";YES"
else printf ";NO"
printf "\n"
}
}' input.csv | sort > output.csv

关于linux - 如何将基于日期的 CSV 文件转换为电子表格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41987928/

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