PATH
variable: single location (\S\bin
) for personal scripts
PYTHONPATH
variable: current projects
publish.bat
Script to publish blog post
python -m blog_tools -u -a post_file -f %1 2>&1
REM reset site
curl http://127.0.0.1:5000/blog/reset
int('000000007fff4070', base=16)
import numpy as np
import pandas as pd
import matplotlib as mpl
import matplotlib.pyplot as plt
from great import test_df
def all_fonts():
return set([f.name for f in mpl.font_manager.fontManager.ttflist])
from mpl_toolkits.mplot3d import Axes3D
from matplotlib.colors import LightSource
= plt.figure()
fig = fig.gca(projection='3d')
ax
# Test data: Matlab `peaks()`
= np.mgrid[-3:3:150j,-3:3:150j]
x, y = 3*(1 - x)**2 * np.exp(-x**2 - (y + 1)**2) \
z - 10*(x/5 - x**3 - y**5)*np.exp(-x**2 - y**2) \
- 1./3*np.exp(-(x + 1)**2 - y**2)
# create light source object.
= LightSource(azdeg=0, altdeg=65)
ls # shade data, creating an rgb array.
= ls.shade(z, plt.cm.RdYlBu)
rgb = ax.plot_surface(x, y, z, rstride=1, cstride=1, linewidth=0,
surf =False, facecolors=rgb) antialiased
apply
expanding outputUse result_type
argument to apply
.
result_type : {‘expand’, ‘reduce’, ‘broadcast’, None}, default None These only act when axis=1
(columns):
* 'expand' : list-like results will be turned into columns.
* 'reduce' : returns a Series if possible rather than expanding
list-like results. This is the opposite of 'expand'.
* 'broadcast' : results will be broadcast to the original shape
of the DataFrame, the original index and columns will be
retained.
The default behaviour (None) depends on the return value of the
applied function: list-like results will be returned as a Series
of those. However if the apply function returns a Series these
are expanded to columns.
agg
= test_df()
df 'D'] = np.random.choice(list('ABCDE'), len(df))
df[# name=(col, func)
'D').agg(min_A=('A', np.min), one=('B', lambda x : 1))
df.groupby(
# col: ((name, func), ...)
'D').agg({'A':[['AMean', np.mean], ['ASum', np.sum]],
df.groupby('B':[['BMean', np.mean], ['BMin', np.min]]})
\\wsl$
/mnt/c/
\\wsl$\Ubuntu\home\steve\.ipython\profile_default\startup
posted 2022-02-02 | tags: programming, code, Python