【发布时间】:2017-11-10 11:52:27
【问题描述】:
我有一个这样的文件:
Date Time Level Gridsize Miss Temp Parameter ID
1988-05-16 12:00:00 -3 1 0 27.060 -1
1988-05-16 12:00:00 -3 1 0 9.0300 -2
1988-05-16 12:00:00 -3 1 0 1.2000 -3
1988-05-17 12:00:00 -3 1 0 27.100 -1
1988-05-17 12:00:00 -3 1 0 9.0200 -2
1988-05-17 12:00:00 -3 1 0 1.2300 -3
1988-05-18 12:00:00 -3 1 0 27.190 -1
1988-05-18 12:00:00 -3 1 0 9.0400 -2
1988-05-18 12:00:00 -3 1 0 1.2200 -3
这些是来自不同位置的传感器的温度数据。字段Parameter ID 确定数据是从传感器-1、-2 还是-3 获取的。我正在将此数据导出到 CSV 文件以进行分析。所需的格式是:
Date Time -1 -2 -3
1988-05-16 12:00:00 27.060 9.0300 1.2000
1988-05-17 12:00:00 27.100 9.0200 1.2300
1988-05-18 12:00:00 27.190 9.0400 1.2200
它按日期和时间对数据进行分组,并根据Parameter ID 的值按列分隔。
我不确定 AWK 的可行性如何,但我曾经主要使用 SSH 来准备这些数据,使用 AWK 的解决方案对我来说非常有趣。另外,如果有其他工具可以在 bash 上实现这一点,我很感兴趣 :)(sed,无论如何,但必须使用本机 linux 命令,因为我不允许在服务器上安装任何东西)
我现在在做什么
现在我为每个传感器运行一个代码
$ awk '$NF == "-1" {print $1";"$2";"$6}' > netcdf_extract_1.csv
$ awk '$NF == "-2" {print $1";"$2";"$6}' > netcdf_extract_2.csv
$ awk '$NF == "-3" {print $1";"$2";"$6}' > netcdf_extract_3.csv
然后在 python 上导入它们。然后我按日期和时间对它们进行分组并得到我的桌子。
【问题讨论】:
-
你尝试过什么吗?
-
好吧,现在我得到了 3 个文件,每个传感器一个,并在 python 上加入它们。另外,我尝试了一些东西。我会发布代码。