我使用气候数据运算符 (CDO( 以 CSV 格式提取时间序列,代码如下cdo -outputtab,date,lon,lat,value -remapnn,lon={}_lat={} input.nc> output.csv
在这里,CSV 文件在单个列中带有变量日期、lon、lat 和值,如下所示。
date lat lon value
1950-01-01 31.57 -85.25 0.05
1950-01-01 31.57 -85.25 0.06
1950-01-01 31.57 -85.25 0.07
.......
.......
2000-01-01 31.57 -85.25 3.01
如何为每个变量创建列?
如果可能的话,我想更改给定的代码。
使用sed
将空格转换为逗号?
类似的东西
cdo -outputtab,date,lon,lat,value -remapnn,lon={}_lat={} input.nc |
sed 's/[[:space:]]/,/g' > output.csv
(如果cdo
使用制表符而不是空格来分隔值,这也将起作用(。
我不确定这是否是回答自己的好方法,因为我不想删除我的问题。我想附上我的答案,因为我能够使用以下代码
解决cdo -outputtab,date,lon,lat,value -remapnn,lon={}_lat={} input.nc | awk 'FNR==1{ row=$2","$3","$4","$5;print row } FNR!=1{ row=$1","$2","$3","$4; print row}' > output.csv