DOI: 10.5061/dryad.n8pk0p38q
title: Precipitation Estimation from Remotely Sensed Information using Artificial Neural Networks-Cloud Classification System-Climate Data Record Version 2.0 (PERSIANN-CCS-CDR V2.0)

description: PERSIANN-CCS-CDR Version 2.0, a near-global 37+ year high-resolution
 precipitation dataset with both high spatial and temporal resolutions.
 Developed by the Center for Hydrometeorology and Remote Sensing (CHRS) at
 the University of California, Irvine (UCI). PERSIANN-CCS-CDR V2.0 consists
 of 2 sub-products PERSIANN-CCS-CDR B1 from 1983 to present and
 PERSIANN-CCS-CDR CPC from March 2000 to present, both provide
 precipitation estimates at 0.04° spatial and 3-hourly temporal resolutions
 over the global domain of 60°S to 60°N. PERSIANN-CCS-CDR Version 2.0 is
 regularly updated; therefore, this page serves as the DOI landing page for
 the dataset. A few sample files are provided here for reference. To access
 and download the full dataset, please visit the CHRS Data Portal.
 (https://chrsdata.eng.uci.edu/)
description: # Precipitation Estimation from Remotely Sensed Information using
 Artificial Neural Networks-Cloud Classification System-Climate Data Record
 Version 2.0 (PERSIANN-CCS-CDR V2.0) Dataset DOI:
 [10.5061/dryad.n8pk0p38q](https://doi.org/10.5061/dryad.n8pk0p38q) ##
 Description of the data and file structure **PERSIANN-CCS-CDR Version
 2.0** is regularly updated; therefore, this page serves as the DOI landing
 page for the dataset. A few sample files are provided here for reference.
 PERSIANN-CCS-CDR V2.0 consists of 2 sub-products **PERSIANN-CCS-CDR B1**
 from 1983 to present and **PERSIANN-CCS-CDR CPC** from March 2000 to
 present, both provide precipitation estimates at 0.04° spatial and
 3-hourly temporal resolutions over the global domain of 60°S to 60°N. To
 access and download the full dataset, please visit the CHRS Data Portal.
 (***[https://chrsdata.eng.uci.edu/](https://chrsdata.eng.uci.edu/)***) 
 
 ``` The final PERSIANN-CCS-CDR rainfall data are accumulated (in mm) for
 3hrly, 6hrly, daily, monthly, & yearly, provided in separate
 directories. The files are named for the accumulation period and the start
 time of the period. PCCSCDRXXYYMMDDhh.bin.gz XX -- will be 3h, 6h,1d, 1m,
 1y YYMMDD -- year month day YYMM for 1m data YYYY for 1y data hh -- will
 be the starting hour of the accumulation period. For example:
 PCCSCDR3h19010106.bin.gz represents the mm accumulation over the 3 hour
 period on 2019 Jan 1st from 06:00Z up through 08:59Z. daily (1d) data do
 not have hh in the name and go from 00:00Z to 23:59Z of the given date.
 monthly (1m) data are standardized to a 30day month. yearly (1y) data are
 based on the accumulation for that calendar year. All data are in flat
 binary files 4-byte float (float32) values in little-endian byte-order.
 Area covered in .04 deg from 60N to 60S and 0 to 360 for 3000 rows x 9000
 cols Data are stored in the file in row-major orientation with the first
 9000 values the N-most row centered at 59.98N with longitude centers from
 .02 to 359.98 and the last row (S-most row) centered at 59.98S ``` ***The
 "Script.py" file can serve as an example on how to read the
 files.*** just put the "***Script.py"*** in
 ***"Example"*** folder, open CMD and run the following script:
 ``` cd C:\Users\User\Desktop\Examples #(replace this with directory of
 Examples folder on your system) python .\Script.py ``` this script will
 read and plot the ".\PERSIANN-CCS-CDR
 CPC\PCCSCDR1d240101.bin.gz" file as an example. you can change the
 "PATH" variables to read different files. The Script.py file can
 also be find bellow: ``` import numpy as np def read_bin_file(filename,
 shape=(3000,9000)): if filename[-3:] == ".gz": import gzip with
 gzip.open(filename, "rb") as f: data = np.frombuffer(f.read(),
 dtype=np.float32) else: with open(filename, "rb") as f: data =
 np.fromfile(f, dtype=np.float32) # Read as short integers #data =
 data.byteswap().view(data.dtype.newbyteorder("&gt;")) # You
 might need to remove,or # change this line based on your system default
 endian settings data = data.reshape(shape) mask=data&lt;0
 arr=np.full(data.shape,np.nan,dtype=np.float32)*np.nan
 arr[~mask]=data[~mask] return arr # First exctract the Examples.zip files
 and then put the complete path name of #your desired file into variable
 "PATH" PATH=r'.\PERSIANN-CCS-CDR
 CPC\PCCSCDR1d240101.bin.gz' # this path is probably #diffrent for
 your system data=read_bin_file(PATH) # to plot the data use this code:
 import matplotlib.pyplot as plt plt.figure() plt.imshow(data,clim=(0,30))
 cbar=plt.colorbar(fraction=.02) cbar.set_label("mm") xticks =
 [0, 4500,9000] xlabels = ["0°", "180°",
 "360°",] plt.xticks(xticks, xlabels) yticks = [0, 1500, 3000]
 ylabels = ["60°", "0°", "-60°",]
 plt.yticks(yticks, ylabels) plt.xlabel('Longitude')
 plt.ylabel('Latitude') plt.savefig('ex.png')
 plt.show() ``` ### Files and variables PERSIANN-CCS-CDR Version 2.0 is
 regularly updated; therefore, this page serves as the DOI landing page for
 the dataset. To access and download the full dataset, please visit the
 CHRS Data Portal.
 ([https://chrsdata.eng.uci.edu/](https://chrsdata.eng.uci.edu/)) For
 reference purposes, a limited set of sample files is provided in
 **`Examples.zip`**. This archive contains two subdirectories: *
 **PERSIANN-CCS-CDR B1** – sample files for the PERSIANN-CCS-CDR B1
 subproduct * **PERSIANN-CCS-CDR CPC** – sample files for the
 PERSIANN-CCS-CDR CPC subproduct Within each subdirectory, example files
 are included for the following temporal resolutions: **3-hourly, 6-hourly,
 daily, monthly, and yearly**, following the naming convention described
 above. All files are provided in **binary format**. Instructions for
 properly reading and loading these files are also described above. ##
 Access information Publicly accessible locations of the data: *
 [https://chrsdata.eng.uci.edu/](https://chrsdata.eng.uci.edu/)