在netCDF4中创建多个组时出现问题

2024-09-30 18:16:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用netcdf文件来使用netCDF4包在多个组中存储一组数据帧。我的问题是,当我试图创建超过50个组时,Python崩溃了。它适用于少数群体

我是做错了什么事,还是有什么地方出了问题

我试着使用h5netcdf包中的legacyapi(将代码中的第一行替换为import h5netcdf.legacyapi as nc),在这里创建组没有任何问题

import netCDF4 as nc    
import pandas as pd
N = 100 # With N = 100, python crashes
# It does not crash if I set N = 50

dataset = nc.Dataset('test.nc', 'w')
for i in range(0,N):
   A = pd.DataFrame(data = [1,2,3,4])
   grpid = dataset.createGroup(str(i))

   grpid.createDimension('Rows', A.shape[0])
   grpid.createDimension('Columns', A.shape[1])

   B = grpid.createVariable('B', 'd', ('Rows', 'Columns'))

   B[:,:] = A.values.astype('d')

dataset.close()

我得到的唯一错误消息是python已经停止工作,然后崩溃了


Tags: columns文件importasnetcdfdatasetrowspd