平均値、標準偏差、中心値

9455 ワード

へいきん

total = 0
count = 0
numbers = input("Enter a number :  (<Enter Key> to quit)")
while numbers != "":
    try:
        x = float(numbers)
        count += 1
        total = total + x
    except ValueError:
        print('NOT a number! Ignored..')
    numbers = input("Enter a number :  (<Enter Key> to quit)")
avg = total / count
print("\n average is", avg)
平均値を求めるには숫자들의 총합しか必要なく、数字を配列や変数として格納する必要はありません.したがって,コードではtotalという変数に数字を割り当て続け,その時点までの総和しか覚えていない.
次のように、数値入力とカウントを繰り返します.
total = 0.0
number = float(input("enter the number: "))
total = total + number
number = float(input("enter the number: "))
total = total + number
...

ひょうじゅんへんさ


次の式は標準偏差を求める式です.

ここでsは標準偏差(std)xは입력받은 숫자들 nは입력받은 샘플의 개수\x\overlinexは\\\xです.*
入力したすべての数字を保存する必要があります.
この場合、データ値全体を1つのオブジェクトに順番に集約できる場合にのみ、使用が容易になります.
Pythonはlistというデータ構造を提供し、この機能を備えています.

Xという変数に順番に格納される数学記号.

ちゅうしんち


中心値は、指定した数値がサイズ順に配置されたときに最も中央に位置する数値です.
中央の位置は、その数字の合計が奇数か偶数かによって異なります.
ex)
数値が1、3、3、6、7、8、9の場合、中心値は6です.
数値が1、3、3、7、8、9の場合、中心値は(3+7)/2=5です.
つまり、総数nの数字を順番に並べると、
nが奇数である場合、n/2の四捨五入順序の値が中心値となる.
ex)上の7/2=3.5四捨五入=4、4番目の数字は中央値
nが偶数の場合、n/2値および(n/2+1)値の中心値
ex)の上では6/2=3、(6/2)+1)=4であるため、3番目の値と4番目の値が中心値となる.
中心値を求めるコードの実装
def median(nums):  		# nums : 리스트를 지정하는 매개변수
    nums.sort()					# **sort()**로 리스트를 **오름차순** 순서대로 정렬
    size = len(nums)
    p = size // 2
    if size % 2 == 0:		   # 리스트의 개수가 짝수일때 
        pr = p                         # 4번째 값
        pl = p-1                      # 3번째 값
        mid= float((nums[pl]+nums[pr])/2)    
    else:								# 리스트의 개수가 홀수일때
        mid = nums[p]
    return mid

print('X :', X)
median(X)						# 매개변수의 값으로 X를 사용함
NumpyはNumerical Pythonの略で、科学計算に用いられる高性能計算と평균Pythonのデフォルトパッケージマネージャとしてpipdksdpsms Numpyがないため、新しいインストール
基本的にも含まれています.데이터 분석에 필요한 파이썬 패키지 **conda list , grep numpy 명령어로 설치여부 확인**

Numpyのメリット

  • メモリを高速かつ効率的に使用する、ベクトル演算およびブロードキャスト演算をサポートする多次元配列**pip install numpy 설치 명령어**データ型
  • .
  • は、重複文
  • を記述することなく、データ・アレイ全体を迅速に計算できる複数の標準数学関数を提供します.
  • アレイのデータをディスクに書き込みまたは読み取りできます.
  • 線形対数、乱数発生器、フーリエ変換器に変換可能、
  • を集積したC/C++ポート
    Numpyを使用するには、ndarrayオブジェクトを作成する必要があります.
    endarrayオブジェクトを使用すると、Pythonで使用されている大きなデータセットをn次元配列で表示できます.

    カレンダーの作成

    import numpy as np
    
    A = np.arange(5)
    # [0 1 2 3 4]
    
    B = np.array([0,1,2,3,4])
    # [0 1 2 3 4]
    
    C = np.array([0,1,2,3,'4'])
    # ['0' '1' '2' '3' '4']
    Cの場合、「4」が1つしかなく、0、1、2、3が文字列になっています.
    numpy.arrayもarrayであり、すべての要素タイプが同じである必要があります.**ndarray**したがって、文字列が数値のみのカレンダーに含まれている場合、すべての数値は配列要件を満たすために文字列として解釈されます.**문자열을 모두 숫자로 바꿀 수는 없지만 숫자는 모두 문자열로 바꿔 줄 수 있다.**

    サイズ関数

  • ndarray.size/マトリクス内の要素の数
  • ndarray.形状/行列の形状
  • ndarray.ndim/マトリクスの軸数
  • 行列の形状を変更する()/再構築する.의도가 이런게 아니었다면 예상치 못할 부작용 생길 수 있으니 유의