Python Tips
I’ll leave some personal notes on useful notations when using python.
github
- The file in jupyter notebook format on github is here .
google colaboratory
- To run it in google colaboratory here
Author’s environment
sw_vers
ProductName: Mac OS X
ProductName: Mac OS X
ProductVersion: 10.14.6
BuildVersion: 18G103
Python -V
Python 3.8.5
%matplotlib inline
%config InlineBackend.figure_format = 'svg'
import time
import json
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
import japanize_matplotlib
Take the mean and standard deviation of an array with NaN
When calculating the mean of an array with NaN, using np.mean will return np.nan.
This is inconvenient, so np.nanmean and np.nanstd are useful to calculate the mean and standard deviation without np.nan.
a = np.array([i for i in range(5)])
a = np.append(a, np.nan)
a = np.append(a, np.nan)
a = np.append(a, np.nan)
a
array([ 0., 1., 2., 3., 4., nan, nan, nan])
b = np.array([i for i in range(5)])
np.nanmean(a) == np.nanmean(b)
np.nanmean(a)
2.0
We see that the result is the same.
np.nanstd(a) == np.nanstd(b)
np.nanstd(a)
1.4142135623730951
We can see that the result is the same for the standard deviation as well.
Maximum and minimum
We can calculate max and min in the same way.
a
array([ 0., 1., 2., 3., 4., nan, nan, nan])
np.nanmax(a)
4.0
np.nanmin(a)
0.0
0.0
Very useful!