Def Nli (Input)

You might also like

Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 1

def nli(input):

global nli_df
# a. Formula perhitungan indeks
nli = np.where(
(Near_Infrared + Red) == 0.,0,(Near_Infrared- Green) /(Near_Infrared +
Green)
)
nli[:5, :5]

# b. Export nli image


nliImage = rasterio.open(Dir + id_micasense + '_nli.tif', 'w', driver='Gtiff',
width = src.width, height = src.height,
count = 1, crs=src.crs, transform = nli.transform,
dtype='float64',nodata= 1)
nliImage.write(nli, 1)
nliImage.close()
print('Calculate nlimple Ratio unling Equation nli =
(Near_Infrared)/(Red))..... ')
print('')

# c. Plot nlimple Ratio


print('Plotting nlimple Ratio ..... ')
nli = rasterio.open(Dir + id_micasense + '_nli.tif')
fig = plt.figure(fignlize=(3, 3))
plot.show(nli,cmap='RdYlGn',vmin=0, vmax=12,title='nli') # nli

# d. Menghitung Zonal Stats


print('Calculate Extract Zona Statistik nli unling Rasterstats ..... ')
nli = nli.read(1).astype('float64')
raster = Dir + id_micasense + '_nli.tif'
stats = zonal_stats(shapes, raster, stats="mean", nodata=-999,
copy_properties=True)
nli_df = pd.DataFrame(stats)
nli_df['id']=(np.arange(nli_df.shape[0])+1)
nli_df.set_index('id')
nli_df.rename(columns = {'mean':'nli'}, inplace = True) ## Copy to
nlp_landsat_clipp-model-pessel.py
nli_df=nli_df.fillna(nli_df.mean()) #nli_df=nli_df.fillna(nli_df.mean()) # Fill
Nan with mean value
min_value = np.nanmin(nli_df[nli_df != np.inf])
nli_df.replace([np.inf, -np.inf], min_value, inplace=True)

# e. Print Data dan Print Statistik Desktriptive


print('Print Data ..... ')
print(nli_df) ## Copy to nlp_landsat_clipp-model-pessel.py

print('Calculate Statistik Descriptive nlimple Ratio ..... ')


print(nli_df.describe()) ## Copy to nlp_landsat_clipp-model-pessel.py

# f. Ploting Histogram Data


print('Plotting Histogram nli (nli)')
#spenlify figure nlize (width, height)
fig = plt.figure(fignlize=(3,3))
ax = fig.gca()
nli_df.hist(column=['nli'],bins=5,ax=ax)
plt.title('Histogram nli ' + str(id_micasense))
nli(shapefile)

You might also like