oafuncs 0.0.77__py2.py3-none-any.whl → 0.0.78__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
oafuncs/oa_nc.py CHANGED
@@ -153,9 +153,14 @@ def merge5nc(file_list, var_name=None, dim_name=None, target_filename=None):
153
153
 
154
154
  参数:
155
155
  file_list:nc 文件路径列表
156
- var_name:要提取的变量名或变量名列表,默认为 None
156
+ var_name:要提取的变量名或变量名列表,默认为 None,表示提取所有变量
157
157
  dim_name:用于合并的维度名
158
158
  target_filename:合并后的目标文件名
159
+
160
+ example:
161
+ merge5nc(file_list, var_name='data', dim_name='time', target_filename='merged.nc')
162
+ merge5nc(file_list, var_name=['data1', 'data2'], dim_name='time', target_filename='merged.nc')
163
+ merge5nc(file_list, var_name=None, dim_name='time', target_filename='merged.nc')
159
164
  """
160
165
  # 初始化变量名列表
161
166
  var_names = None
@@ -208,67 +213,6 @@ def merge5nc(file_list, var_name=None, dim_name=None, target_filename=None):
208
213
  os.remove(target_filename)
209
214
  merged_data.to_netcdf(target_filename)
210
215
  print(f'File "{target_filename}" has been created.')
211
-
212
-
213
- def merge5nc_his1(file_list, var_name, dim_name, target_filename):
214
- """
215
- 批量提取 nc 文件中的某一变量,按照某一维度合并后写入新的 nc 文件。
216
-
217
- 参数:
218
- file_list:nc 文件路径列表
219
- var_name:要提取的变量名
220
- dim_name:用于合并的维度名
221
- target_filename:合并后的目标文件名
222
- example: merge5nc(file_list, 'sst', 'time', 'merged_data.nc')
223
- """
224
- data_list = []
225
- for i, file in enumerate(file_list):
226
- print(f"\rReading file {i + 1}/{len(file_list)}...", end="")
227
- ds = xr.open_dataset(file)
228
- var = ds[var_name]
229
- data_list.append(var)
230
- ds.close()
231
- print("\nMerging data...")
232
- data = xr.concat(data_list, dim=dim_name)
233
- print("Writing data to file...")
234
- if os.path.exists(target_filename):
235
- print("Warning: The target file already exists.")
236
- print("Removing existing file...")
237
- os.remove(target_filename)
238
- data.to_netcdf(target_filename)
239
-
240
-
241
- def merge5nc_vars_his1(file_list, var_names, dim_name, target_filename):
242
- """
243
- 批量提取 nc 文件中的两个变量,按照某一维度合并后写入新的 nc 文件。
244
-
245
- 参数:
246
- file_list:nc 文件路径列表
247
- var_names:要提取的变量名列表,例如 ['u', 'v']
248
- dim_name:用于合并的维度名
249
- target_filename:合并后的目标文件名
250
-
251
- example: merge5nc_vars(file_list, ['u', 'v'], 'time', 'merged_data.nc')
252
- """
253
- data_lists = [[] for _ in var_names]
254
- for i, file in enumerate(file_list):
255
- print(f"\rReading file {i + 1}/{len(file_list)}...", end="")
256
- ds = xr.open_dataset(file)
257
- for j, var_name in enumerate(var_names):
258
- var = ds[var_name]
259
- data_lists[j].append(var)
260
- ds.close()
261
- print("\nMerging data...")
262
- merged_data = {}
263
- for var_name, data_list in zip(var_names, data_lists):
264
- merged_data[var_name] = xr.concat(data_list, dim=dim_name)
265
- print("Writing data to file...")
266
- ds_merged = xr.Dataset(merged_data)
267
- if os.path.exists(target_filename):
268
- print("Warning: The target file already exists.")
269
- print("Removing existing file...")
270
- os.remove(target_filename)
271
- ds_merged.to_netcdf(target_filename)
272
216
 
273
217
 
274
218
  def modify_var_value(nc_file_path, variable_name, new_value):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: oafuncs
3
- Version: 0.0.77
3
+ Version: 0.0.78
4
4
  Summary: My short description for my project.
5
5
  Home-page: https://github.com/Industry-Pays/OAFuncs
6
6
  Author: Kun Liu
@@ -4,11 +4,11 @@ oafuncs/oa_data.py,sha256=H9qZrUziOpc456iIL-1lBwSkBPApl2rlR-ajZg-mDMs,8119
4
4
  oafuncs/oa_draw.py,sha256=K5B_otgx7Bu5P6ZYipNt9C-uRI1w9oxwY1M1F0-kGuM,17329
5
5
  oafuncs/oa_file.py,sha256=iHgv0CTH4k_7YUnQ8-qQbLoz_f2lUmVhzGWQ2LkPFP8,11624
6
6
  oafuncs/oa_help.py,sha256=ppNktmtNzs15R20MD1bM7yImlTQ_ngMwvoIglePOKXA,1000
7
- oafuncs/oa_nc.py,sha256=7KSONwujhElQo1dfuEE4EpVfaqnWyILdGvsdqpKrnMI,14666
7
+ oafuncs/oa_nc.py,sha256=7Fp65BJF_PtyaaxS5PS2apA-KkkQLhqh19Xlw__8XMo,12656
8
8
  oafuncs/oa_python.py,sha256=XPTP3o7zTFzfJR_YhsKfQksa3bSYwXsne9YxlJplCEA,3994
9
9
  oafuncs/oa_down/User_Agent-list.txt,sha256=j88ML0zwVibNj484ehurfZMX-PZ7G_1TwhwpcJZMIB0,884393
10
10
  oafuncs/oa_down/__init__.py,sha256=nY5X7gM1jw7DJxyooR2UJSq4difkw-flz2Ucr_OuDbA,540
11
- oafuncs/oa_down/hycom_3hourly.py,sha256=wVJgA8SBMr0RurTz7AkI8d5pJ4sj1oWl__cnSPATiCA,50343
11
+ oafuncs/oa_down/hycom_3hourly.py,sha256=YcLBysnU1y-qEyNLn93KoeUvjmrfe31ViDSKURilr98,52365
12
12
  oafuncs/oa_down/literature.py,sha256=dT3-7-beEzQ9mTP8LNV9Gf3q5Z1Pqqjc6FOS010HZeQ,17833
13
13
  oafuncs/oa_down/test.py,sha256=5sm73uduL0WO1GFv66ONIDLDAFavGz5qFoQpah5PbW8,8934
14
14
  oafuncs/oa_sign/__init__.py,sha256=QKqTFrJDFK40C5uvk48GlRRbGFzO40rgkYwu6dYxatM,563
@@ -17,8 +17,8 @@ oafuncs/oa_sign/ocean.py,sha256=xrW-rWD7xBWsB5PuCyEwQ1Q_RDKq2KCLz-LOONHgldU,5932
17
17
  oafuncs/oa_sign/scientific.py,sha256=a4JxOBgm9vzNZKpJ_GQIQf7cokkraV5nh23HGbmTYKw,5064
18
18
  oafuncs/oa_tool/__init__.py,sha256=IKOlqpWlb4cMDCtq2VKR_RTxQHDNqR_vfqqsOsp_lKQ,466
19
19
  oafuncs/oa_tool/email.py,sha256=4lJxV_KUzhxgLYfVwYTqp0qxRugD7fvsZkXDe5WkUKo,3052
20
- oafuncs-0.0.77.dist-info/LICENSE.txt,sha256=rMtLpVg8sKiSlwClfR9w_Dd_5WubTQgoOzE2PDFxzs4,1074
21
- oafuncs-0.0.77.dist-info/METADATA,sha256=66VNZ7aM1IFNy5H50VrBOMDlphZ0Mxr-gmBZVC6oAT4,22481
22
- oafuncs-0.0.77.dist-info/WHEEL,sha256=pxeNX5JdtCe58PUSYP9upmc7jdRPgvT0Gm9kb1SHlVw,109
23
- oafuncs-0.0.77.dist-info/top_level.txt,sha256=bgC35QkXbN4EmPHEveg_xGIZ5i9NNPYWqtJqaKqTPsQ,8
24
- oafuncs-0.0.77.dist-info/RECORD,,
20
+ oafuncs-0.0.78.dist-info/LICENSE.txt,sha256=rMtLpVg8sKiSlwClfR9w_Dd_5WubTQgoOzE2PDFxzs4,1074
21
+ oafuncs-0.0.78.dist-info/METADATA,sha256=FIrrAy9-BXd05CDev0zlo6FtEiy3WZFYCn58hSBWiyE,22481
22
+ oafuncs-0.0.78.dist-info/WHEEL,sha256=pxeNX5JdtCe58PUSYP9upmc7jdRPgvT0Gm9kb1SHlVw,109
23
+ oafuncs-0.0.78.dist-info/top_level.txt,sha256=bgC35QkXbN4EmPHEveg_xGIZ5i9NNPYWqtJqaKqTPsQ,8
24
+ oafuncs-0.0.78.dist-info/RECORD,,