def t_value_calc(): # 変数の確認用 def var_check(v): print(v) # 準備 np.random.seed(1) resb = np.zeros(10000) # 正規分布のインスタンス norm_dist = sts.norm(loc=4, scale=0.8) # シミュレーション for i in range(0, 10000): sample = norm_dist.rvs(size=10) sample_mean = sp.mean(sample) sample_std = sp.std(sample, ddof=1) sample_se = sample_std / sp.sqrt(len(sample)) resb[i] = (sample_mean - 4) / sample_se # # var_check(resb) # title = "t_value_calc_graph and probability_density_graph" plt.title(title) # t値のヒストグラム graph = sns.distplot(resb, color="black") # 標準正規分布の確率密度 x = np.arange(start=-8, stop=8.1, step=0.1) graph = plt.plot(x, sts.norm.pdf(x=x), color="black", linestyle="dotted") canvas = f.image_graph(dt_name=title, dt_graph=graph) canvas.view_option(me=4, st=0.8, va=0.64)
def arange_samplesize(): # シード値の固定 np.random.seed(1) # samplesize=10 size_10 = f.sigma_calc(size=10, n_trial=10000) size_10_df = pd.DataFrame({ "list_mean": size_10.create_source(), "size": np.tile("size 10", 10000) }) # samplesize=20 size_20 = f.sigma_calc(size=20, n_trial=10000) size_20_df = pd.DataFrame({ "list_mean": size_20.create_source(), "size": np.tile("size 20", 10000) }) # samplesize=30 size_30 = f.sigma_calc(size=30, n_trial=10000) size_30_df = pd.DataFrame({ "list_mean": size_30.create_source(), "size": np.tile("size 30", 10000) }) # 結合 sim_result = pd.concat([size_10_df, size_20_df, size_30_df]) # print(sim_result.head()) # グラフの表示 title = "arange_samplesize_graph" plt.title(title) graph = sns.violinplot(x="size", y="list_mean", data=sim_result, color="gray") canvas = f.image_graph(graph, title) canvas.view_option(me="", st="", va="")
def graph_plot(gh_title, gh_source): # tmp_me = input("平均値(特になければ空でOK) >>> ") # tmp_st = input("標準偏差(特になければ空でOK) >>> ") # tmp_va = input("分散(特になければ空でOK) >>> ") plt.title(gh_title) canvas = f.image_graph(dt_name=gh_title, dt_graph=gh_source) canvas.view_option(me="", st="", va="")
def sigma_graph(list, op1, op2, op3): title = "fish_population_graph" plt.title(title) graph = sns.distplot(list, kde=False, color='black') # 表示 canvas = f.image_graph(graph, title) canvas.view_option(op1, op2, op3)
def sigma_standard_error(): # prepare spm = np.arange(start=2, stop=102, step=2) std_box = np.zeros(len(spm)) # 単純な計算式 st_err_1 = 0.8 / np.sqrt(spm) # 標本平均の標準偏差 np.random.seed(1) for i in range(0, len(spm)): tmp = f.sigma_calc(size=spm[i], n_trial=100) std_box[i] = sp.std(tmp.create_source(), ddof=1) # 変数の確認用 def var_conf(v): print(v) # var_conf(std_box) # コメントアウト推奨 # 標本平均の標準偏差と標準誤差のグラフ title = "sigma_standard_error_graph" plt.title(title) graph = plt.plot(spm, std_box, color="black") graph = plt.plot(spm, st_err_1, linestyle="dotted", color="black") graph = plt.xlabel("smaple_size") graph = plt.ylabel("mean_std_value") canvas = f.image_graph(dt_graph=graph, dt_name=title) canvas.view_option(me="", st="", va="")
def tbunpu_and_tvalue(): #--- t値(標本から計算された標準誤差) np.random.seed(1) resb = np.zeros(10000) # 正規分布のインスタンス norm_dist = sts.norm(loc=4, scale=0.8) # シミュレーション for i in range(0, 10000): sample = norm_dist.rvs(size=10) sample_mean = sp.mean(sample) sample_std = sp.std(sample, ddof=1) sample_se = sample_std / sp.sqrt(len(sample)) resb[i] = (sample_mean - 4) / sample_se #--- まで --- #--- t分布の確率密度 x = np.arange(start=-8, stop=8.1, step=0.1) #--- まで # グラフの描写 title = "tbunpu_and_tvalue_graph" plt.title(title) sns.distplot(resb, color="black", norm_hist=True) graph = plt.plot(x, sts.t.pdf(x=x, df=9), color="black", linestyle="dotted") canvas = f.image_graph(dt_name=title, dt_graph=graph) canvas.view_option(me="", st="", va="")
def like_graph(list, density, op1, op2, op3): title = "fixed_population_graph" plt.title(title) graph = plt.plot(list, density, color="black") # 表示 canvas = f.image_graph(graph, title) canvas.view_option(op1, op2, op3)
def barplot(data): # グラフデザインの指定 sns.set() #グラフの描写 title = "barplot_graph" plt.title(title) graph = sns.barplot(x="species", y="length", data=data, color="gray") #表示 canvas_view = f.image_graph(graph, title) canvas_view.view()
def jointplot(data): # グラフデザインの指定 sns.set() #グラフの描写 title = "jointplot_graph" plt.title(title) graph = sns.jointplot(x="x", y="y", data=data, color="black") #表示 canvas_view = f.image_graph(graph, title) canvas_view.view()
def t_bunpu(): # 準備 x = np.arange(start=-8, stop=8.1, step=0.1) # グラフの描写 title="t_bunpu_graph" plt.title(title) plt.plot(x, sts.norm.pdf(x=x), color="black", linestyle="dotted") graph = plt.plot(x, sts.t.pdf(x=x, df=9), color="black") canvas = f.image_graph(dt_name=title, dt_graph=graph) canvas.view_option(va="", st="", me="")
def iris_graph(data): #グラフデザインの指定 sns.set() #グラフの描写 title = "iris_pairplot_graph" plt.title(title) graph = sns.pairplot(data, hue="species", palette="gray") # hueはカテゴリ型データの列名を指定する #表示 canvas_view = f.image_graph(graph, title) canvas_view.view()
def kernel_design(): # データの用意 list_data = np.array([2, 3, 3, 4, 4, 4, 4, 5, 5, 6]) # グラフデザインの設定 sns.set() # グラフの描写 title = "kernel_design_histgram" plt.title(title) graph = sns.distplot(list_data, color="black") canvas_view = f.image_graph(graph, title) canvas_view.view()
def bins_1_design(): # データの用意 list_data = np.array([2, 3, 3, 4, 4, 4, 4, 5, 5, 6]) # グラフデザインの設定 sns.set() # グラフの描写 title = "bins_1_histgram" plt.title(title) graph = sns.distplot(list_data, bins=1, color="black", kde=False) canvas_view = f.image_graph(graph, title) canvas_view.view()
def histogram(): # データの用意 list_data = np.array([2, 3, 3, 4, 4, 4, 4, 5, 5, 6]) # グラフデザインの設定 sns.set() # グラフの描写 title = "histogram_seaborn" plt.title(title) graph = sns.distplot(list_data, bins=5, color="black", kde=False) canvas_view = f.image_graph(graph, title) canvas_view.view()
def lineplot(): # データの用意 x = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) y = np.array([2, 3, 4, 3, 5, 4, 6, 7, 4, 8]) # グラフの描写 title = "linegraph" plt.title(title) graph = plt.plot(x, y, color="blue") canvas_view = f.image_graph(graph, title) canvas_view.view()
def lineplot_seaborn(): # データの用意 x = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) y = np.array([2, 3, 4, 3, 5, 4, 6, 7, 4, 8]) # グラフデザインの設定 sns.set() # グラフの描写 title = "linegraph_seaborn" plt.title(title) graph = plt.plot(x, y, color="black") canvas_view = f.image_graph(graph, title) canvas_view.view()
def fish_fixed_graph(): # 準備 x = pd.read_csv("/root/app/sts4_csv.csv")["length"] y = np.arange(start=1, stop=7.1, step=0.1) # 表示 title = "fish_fixed_graph" plt.title(title) graph = sns.distplot(x, kde=False, norm_hist=True, color="black") graph = plt.plot(y, stats.norm.pdf(x=y, loc=4, scale=0.8), color="black") canvas = f.image_graph(graph, title) canvas.view_option(4, 0.8, 0.64)
def multi_line(list_data): # グループ別に分割 list_a = list_data.query('species=="A"')["length"] list_b = list_data.query('species=="B"')["length"] # グラフデザインの指定 sns.set() #グラフの描写 title = "multi_line_graph" plt.title(title) graph = sns.distplot(list_a, bins=5, color="red", kde=False) graph = sns.distplot(list_b, bins=5, color="blue", kde=False) # グラフの表示 canvas_view = f.image_graph(graph, title) canvas_view.view()
def coin_check(): n_size = 10000 n_trial = 50000 # 表なら1, 裏なら0 coin = np.array([0, 1]) count_coin = np.zeros(n_trial) # 思考実験:コインをn_size回数投げる施工をn_trial回行う np.random.seed(1) for i in range(0, n_trial): count_coin[i] = sp.sum( sp.random.choice(coin, size=n_size, replace=True)) # ヒストグラムで描写 title = "coin_check_graph(ver.Histgram)" plt.title(title) graph = sns.distplot(count_coin, color="black") canvas = f.image_graph(dt_name=title, dt_graph=graph) canvas.view_option(me="", va="", st="")
def sigma_mean_feature(pop): box = np.zeros(10000) # 空のリストを用意 np.random.seed(1) # 乱数の固定 # 標本抽出のシミュレーション for i in range(0, 10000): var = pop.rvs(size=10) box[i] = sp.mean(var) box_mean = np.mean(box) # 10000もの標本平均の平均 box_std = sp.std(box, ddof=1) # 10000もの標本平均の不偏標準偏差 box_var = sp.var(box, ddof=1) # ついでに分散も # グラフに示す title = "sigma_mean_feature_graph" plt.title(title) graph = sns.distplot(box, color="black") canvas = f.image_graph(graph, title) canvas.view_option(box_mean, box_std, box_var)
def sigma_mean_deviation(): # prepare base_samplesize = np.arange(start=2, stop=102, step=2) base_box = np.zeros(len(base_samplesize)) # シード値の固定 np.random.seed(1) for i in range(0, len(base_samplesize)): tmp_box = f.sigma_calc(size=base_samplesize[i], n_trial=100) base_box[i] = sp.std(tmp_box.create_source(), ddof=1) # グラフの描写 title = "sigma_mean_deviation_graph" plt.title(title) graph = plt.plot(base_samplesize, base_box, color="black") graph = plt.xlabel("base_samplesize") graph = plt.ylabel("base_box") canvas = f.image_graph(graph, title) canvas.view_option(me="", st="", va="")
def arange_samplesize_var(): # シード値の固定 np.random.seed(1) # 準備 pop = stats.norm(loc=4, scale=0.8) # 各サンプルサイズの用意 size = np.arange(start=10, stop=100010, step=10) box = np.zeros(len(size)) for i in range(0, len(size)): tmp = pop.rvs(size=size[i]) box[i] = sp.var(tmp, ddof=1) # グラフの描写 title = "range_samplesize_var_graph" plt.title(title) plt.xlabel("sample_size") plt.ylabel("arange_var_data") graph = plt.plot(size, box, color="black") canvas = f.image_graph(dt_graph=graph, dt_name=title) canvas.view_option(me=4, st=0.8, va="")
def bigger_samplesize(pop): # サンプルサイズの用意(10 ~ 100100まで100区切りでプールを用意) size_array = np.arange(start=10, stop=100100, step=100) # 標本平均を格納する箱の用意 samplesize_box = np.zeros(len(size_array)) # 標本平均をサンプルサイズ別に格納 np.random.seed(1) for i in range(0, len(size_array)): dt = pop.rvs(size=size_array[i]) samplesize_box[i] = sp.mean(dt) # 標本平均の各情報 box_mean = sp.mean(samplesize_box) box_std = sp.std(samplesize_box, ddof=1) box_var = sp.var(samplesize_box, ddof=1) # グラの描写 title = "bigger_samplesize_graph" plt.title(title) graph = plt.plot(size_array, samplesize_box, color="black") graph = plt.xlabel("sanple_size") graph = plt.ylabel("sample_mean") canvas = f.image_graph(graph, title) canvas.view_option(box_mean, box_std, box_var)
def debug_space(): test = f.image_graph("graph", "graph_title") test.view_option("", "", "")