ขนาดวิดีโอ: 1280 X 720853 X 480640 X 360
แสดงแผงควบคุมโปรแกรมเล่น
เล่นอัตโนมัติ
เล่นใหม่
自分で書いたコードがグラフになる、って楽しいですね。100本ノックでグラフ作成を実装したとき、自分の手を動かして記述したものがきちんと動いたことに、達成感がありました。今回の動画も何度も見直しして、自分のものにしたいです。Pythonでできることをご紹介いただきありがとうございます。「偶然」の統計学は知らなかったので、図書館で予約しました。
今回も勉強させて頂きました。今回のコードの一部。自分用のメモですが少しでも他の方にお役に立てるならばと。#モジュールのインポートimport numpy as npimport pandas as pd!pip install japanize-matplotlibimport matplotlib.pyplot as pltimport japanize_matplotlibimport seaborn as snssns.set()plt.show()from scipy.stats import binom #統計的な計算を行う。二項分布import math#グラフプロット用の独自関数def plotBinomial(N,p):#N 試行回数(ガチャ引く回数)、p:(当たる)確率 xs = [] ys = [] for x in range(N +1 ): xs.append(x) ys.append(binom.pmf(x,N,p)) fig = plt.figure(figsize = (8,5)) graph = fig.add_subplot(1,1,1) graph.bar(xs,ys)#確率を計算する独自関数def calcProbability(k,N,p):# k:試行回数中の発生回数。N:試行回数。p:確率 pro = sum(binom.pmf(k,N,p))*100 # 二項分布の確率計算 pro = round(pro,2) # roundで四捨五入。 return pro#Aさん。p = 0.1 #1回当たるものでN = 10 #試行回数10回でk = [2] #2回当たりました。calcProbability(k,N,p)print("Aさんのような事象が起こる確率",calcProbability(k,N,p),"%です。" )#Bさん。p = 0.1 #当たる確率10%でN = 50 #試行回数50回でk = [1] #1回当たりました。calcProbability(k,N,p)print("Bさんのような事象が起こる確率",calcProbability(k,N,p),"%です。" )#Cさん。p = 0.1 #当たる確率10%でN = 100 #試行回数100回でk = [1] #1回当たりました。calcProbability(k,N,p)print("Cさんのような事象が起こる確率",calcProbability(k,N,p),"%です。" )
品質保証が欲しがりそうです工程能力や製品のすんぱうのバラツキをエクセルでやっていたが。
松風という男がPythonで競馬予想AI開発して大儲けしてるのいるんだが…回収率の高い券種を知りたい😲
初歩的な質問で申し訳ないのですが、for文でrange(N+1)になっている意味がちょっと分からないので、教えていただけませんか?
例えば10回の試行をする場合、その当たりも数は0回、1回、…9回、10回となり、確率変数が11個できるのでN+1になってます。あってるかな🤭
range(N)にしてしまうとNになったタイミングでfor文のループから外れてしまいます。つまりN回目の事象にはfor文の中身が計算されないことになります。N回目の事象を計算するためにrange(N+1)にしています。例for i in range(10): print(i)→最後に10は表示されない
ありがとうございました。お陰さまで理解出来ました。
自分で書いたコードがグラフになる、って楽しいですね。
100本ノックでグラフ作成を実装したとき、
自分の手を動かして記述したものがきちんと動いたことに、達成感がありました。
今回の動画も何度も見直しして、自分のものにしたいです。
Pythonでできることをご紹介いただきありがとうございます。
「偶然」の統計学は知らなかったので、図書館で予約しました。
今回も勉強させて頂きました。
今回のコードの一部。自分用のメモですが少しでも他の方にお役に立てるならばと。
#モジュールのインポート
import numpy as np
import pandas as pd
!pip install japanize-matplotlib
import matplotlib.pyplot as plt
import japanize_matplotlib
import seaborn as sns
sns.set()
plt.show()
from scipy.stats import binom #統計的な計算を行う。二項分布
import math
#グラフプロット用の独自関数
def plotBinomial(N,p):#N 試行回数(ガチャ引く回数)、p:(当たる)確率
xs = []
ys = []
for x in range(N +1 ):
xs.append(x)
ys.append(binom.pmf(x,N,p))
fig = plt.figure(figsize = (8,5))
graph = fig.add_subplot(1,1,1)
graph.bar(xs,ys)
#確率を計算する独自関数
def calcProbability(k,N,p):# k:試行回数中の発生回数。N:試行回数。p:確率
pro = sum(binom.pmf(k,N,p))*100 # 二項分布の確率計算
pro = round(pro,2) # roundで四捨五入。
return pro
#Aさん。
p = 0.1 #1回当たるもので
N = 10 #試行回数10回で
k = [2] #2回当たりました。
calcProbability(k,N,p)
print("Aさんのような事象が起こる確率",calcProbability(k,N,p),"%です。" )
#Bさん。
p = 0.1 #当たる確率10%で
N = 50 #試行回数50回で
k = [1] #1回当たりました。
calcProbability(k,N,p)
print("Bさんのような事象が起こる確率",calcProbability(k,N,p),"%です。" )
#Cさん。
p = 0.1 #当たる確率10%で
N = 100 #試行回数100回で
k = [1] #1回当たりました。
calcProbability(k,N,p)
print("Cさんのような事象が起こる確率",calcProbability(k,N,p),"%です。" )
品質保証が欲しがりそうです工程能力や製品のすんぱうのバラツキをエクセルでやっていたが。
松風という男がPythonで競馬予想AI開発して大儲けしてるのいるんだが…
回収率の高い券種を知りたい😲
初歩的な質問で申し訳ないのですが、
for文でrange(N+1)になっている意味がちょっと分からないので、
教えていただけませんか?
例えば10回の試行をする場合、その当たりも数は
0回、1回、…9回、10回
となり、確率変数が11個できるのでN+1になってます。
あってるかな🤭
range(N)にしてしまうとNになったタイミングでfor文のループから外れてしまいます。
つまりN回目の事象にはfor文の中身が計算されないことになります。
N回目の事象を計算するためにrange(N+1)にしています。
例
for i in range(10):
print(i)
→最後に10は表示されない
ありがとうございました。
お陰さまで理解出来ました。