netcdf文件操作的python模块

tool4NC的Python项目详细描述


刀具4NC

Build statusbuild statuspypi/a>gittermerocmerocenvads4mo。要了解更多有关它们的信息,请访问上面超链接的项目网页。

我还创建了一个由"gitter"提供支持的聊天社区,在那里可以交换想法、功能、bug等等。点击gitter进入聊天室。

非常感谢您访问此页并试用此软件。

卡梅洛·萨马尔科

简介:

包含简化netcdf文件操作的函数的python模块。

请注意:

该工具正在开发中,因此可以找到错误、错误和不精确之处。如果您找到了,请报告。

依赖关系:

所需的依赖项如下所示:

  • [X]netcdf4>;=1.4.2
  • [X]CSV342>;=1.0.0
  • [X]熊猫>;=0.23.4
  • [X]xarray>;=0.11.0
  • [X]shapely>;=1.6.4.post1
  • [x]fiona>;=1.8.4
  • [x]cdo>;=1.4.0

Unix用户安装(Linux发行版和Mac OSX系统):

首先,请安装cdo-climate data operator。需要运行python模块中包含的几个函数。您可以使用以下命令:

sudo apt-get install cdo

另外,请考虑安装anaconda3.*版本(请注意,建议使用此软件python~=3.6)。一次anaconda bash文件(.sh)已下载,您可以使用以下命令在终端中执行它:

bash file_installation_Anaconda_downloaded.sh

此外,建议更新pip、setuptools和wheels。您可以执行以下命令:

python -m pip install --upgrade pip setuptools wheel

之后,使用以下命令运行软件安装:

pip install tool4nc

Windows用户安装:

首先,请安装cdo-climate data operator。需要在"tab2:netcdf操作"中运行一些函数。您可以从产品网页下载满足系统特性的版本。解压下载的文件夹后,只需运行.exe文件即可在Windows操作系统中安装CDO。

另外,请考虑安装anaconda3.*版本(请注意,建议使用此软件python~=3.6)。从您下载的文件将是stardard可执行文件(.exe)。在运行安装之前,请确保勾选"在Windows路径环境变量中添加蟒蛇包的路径"选项。

此外,建议更新pip、setuptools和wheels。您可以执行以下命令:

python -m pip install --upgrade pip setuptools wheel

在开始安装python模块之前,必须手动配置和安装stardard'pip'windows安装无法正确管理的少量python依赖项。我所说的依赖关系是"shapely"和"fiona"。对于包含在这个python包中的地理空间操作来说,它们是必不可少的python模块(将netcdf变量导出为shapefile,仅举一个例子)。在这个特定的场景中,特别是在windows操作系统中,能够使用python轮子安装所需的模块非常方便。事实上,它们已经被预先编译,然后很容易从windows操作系统中消化。加州大学欧文分校荧光动力学实验室的christoph gohlke负责维护一个大型的python wheels库。请注意,对于每个模块,您都需要选择一台机器来定义您的python版本和pc处理器特性(32位或64位)。如果我们以"shapely-1.6.4.post1-cp37-cp37m-win32.whl"为例,"cp37"表示python版本为3.7.*,而"win32"表示处理器类型为32位。python版本也可以表示为"py3"、"py2"或"py2.py3"。后者当2.*和3.*python版本都可以使用时。要安装控制盘文件,只需在控制盘所在的同一位置运行"pip install[wheel_file]"。要在"shapely"和"fiona"的安装过程中成功,您必须按照下面列出的顺序执行以下步骤:

  1. 安装gdal点击,cli,点击"插件"点击">点击"插件"引引子munch>,费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳费欧纳shapely" rel="nofollow">形状ely来自python wheels库现在,您可以执行以下步骤了。

  2. 安装齿轮。我建议您不要将gdal模块与osgeo4w或其他类似的发行版一起使用,因为它们可能会发生冲突,然后产生错误和故障。还可以将gdal library path添加到windows path环境变量(类似于"c:\ pyhon_version\lib\site packages\osgeo")中。要知道如何添加gdal path变量,可以检查此处。最后,我们现在可以测试gdal模块了。在此之前,请关闭并重新打开命令提示符,然后从任何路径位置执行此命令:

  3. < > >
    gdalinfo --help-general
    

    如果gdal配置正确,它将显示其使用说明。

    1. 安装之前下载的其他python wheels模块(不包括gdal),并遵循列表顺序(从上到下):
    2. < > >
      • 单击
      • cligj
      • 单击"插件"
      • 属性
      • 咀嚼
      • 菲奥娜
      • Pyproj
      • 形状

      现在已经安装了所有最讨厌的依赖项(至少对于Windows OS),您可以执行:

      pip install tool4nc
      

      此时,安装完成后,您可以将TOOL4NC模块导入为:

      from tool4nc import *              --->  #Import all the fuctions
      from tool4nc import [name_fuction] --->  #Import just one fuction 
      

      有关"TOOL4NC"模块中可用功能的列表,请继续阅读下面的内容。

      包括的功能:

      nctocsv("输入文件","路径输出文件夹")

      此函数用于将netcdf文件转换为csv文件。它将分别生成名为file.csv和file_cleaned.csv的两个csv文件。文件_cleaned.csv由所有NaN值清除,它被视为此函数的最终输出文件。

      nctoshape("输入文件","路径输出文件夹","变量名")

      此函数用于将netcdf文件转换为形状文件(点特征)。首先,它将生成两个csv文件,分别称为file.csv和file_cleaned.csv。之后,使用文件_cleaned.csv(由所有NaN值净化)提取表示变量值的相应shapefile,这是此函数的第三个参数。

      nctogdr("输入文件","路径输出文件夹")

      此功能将netcdf文件转换为一些计算所需的grd文件。

      concatnc("路径输入文件夹")

      此函数可以连接来自同一数据集但在不同时间步的数据段。它将生成一个名为"concatenated.nc"的文件作为最终结果。唯一需要的参数是文件所在的文件夹。

      splitnc("输入文件","路径输出文件夹","类型","后缀")

      此函数可以按类型拆分数据:日(dd)、月(yyymm)和年(yyyy)。它提供了向生成的数据添加后缀的选项。

      案例示例:

      我有许多netcdf文件,我想将它们全部转换为csv:

      import os
      from tool4nc import nctocsv
      
      Input_DIR = 'the/directory/you/want/to/use'
      Out_DIR = 'the/directory/you/want/to/use'
      
      for filename in os.listdir(Input_DIR):
          if filename.endswith(".nc"):
             nctocsv (filename, Out_DIR)
      

      我想在我的gis项目(作为形状文件)中覆盖来自netcdf文件中包含的变量的数据:

      sudo apt-get install cdo
      
      0

      我有一个文件夹,里面有一个月的数据,分为日常文件。这些文件是从同一个数据集中下载的,我希望将所有日常文件连接到一个月:

      sudo apt-get install cdo
      
      1

      我有许多netcdf文件,我想将它们全部转换为grd:

      sudo apt-get install cdo
      
      2

      我有一年的档案,但我意识到最好按月整理数据。此外,我还想为每个文件添加一个后缀:

      sudo apt-get install cdo
      
      3

      欢迎加入QQ群-->: 979659372 Python中文网_新手群

      推荐PyPI第三方库


热门话题
java为什么程序显示空结果?   java应用程序在测试设备上调试时工作正常,但在发布版apk中没有,它没有获得post。来自firebase的类变量   java Android:从主活动按钮确定在listview中选中哪个复选框   在Spring中添加@OneToOne注释时启动ApplicationContext时发生java错误   用JAVA Android实现矩阵计算的最快方法   SpringJava语义有没有更好的编写方法?   java从hashmap中减去两个值后返回最小差值的键?   Java中的静态初始化顺序:Netty 4.0.7的例外   java如何检查用户输入是否为字符串   循环Java计数单词索引   java如何使用以下代码将视频流传输到Android异步Http服务器?   java如何在jtable的所有行中循环   java如何使用maven将unicode插入mysql   java使用安卓加速远程数据检索   java试图模拟麦克风(javax.sound.sampled)   swing SwingWorker从不归还任何东西?(爪哇)   首次在Android Studio上未加载java LibGDX文件   java如何在多个Mysql服务器上设置限制和偏移?   如何防止从java连接到mongodb时登录控制台?