1B) Random-sampling.py import numpy as np N=10000 mu=10 std=2 population_df=np.random.normal(mu,std,N) def random_sampling(df,n): random_sample=np.random.choice(df,replace = False,size=n) return(random_sample) randomsample=random_sampling (population_df,N) print(randomsample) 1D) Aggregation.py import pandas as pd import numpy as np df = pd.DataFrame(np.random.randn(10,4)), index = pd.date_range('1/1/2000',periods=10), columns=['A','B','C','D'] print(df) df=pd.DataFrame(np.random.randn(10,4),index = pd.date_range('1/1/2000',periods=10)) r=df.rolling(3,min_periods=1).sum() print(r)