Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

라이브러리가 없는 Python에서 평균, 중앙값, 모드 찾기

<시간/>

Mean, Median 및 Mode는 데이터 분석에서 매우 자주 사용되는 통계 함수입니다. 일부 파이썬 라이브러리가 있지만.

평균 찾기

숫자 목록의 평균은 숫자의 평균이라고도 합니다. 그것은 모든 숫자의 합을 취하여 숫자의 개수로 나누어 구합니다. 아래 예제에서는 sum() 함수를 적용하여 숫자의 합을 구하고 elen() 함수를 적용하여 숫자의 개수를 얻습니다.

num_list =[21, 11, 19, 3,11,5]# 숫자의 합 찾기num_sum =sum(num_list)#합을 목록의 길이로 나눕니다mean =num_sum / len(num_list)print(num_list)print ("위의 숫자 목록의 평균은 다음과 같습니다. " + str(round(mean,2)))

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

[21, 11, 19, 3, 11, 5]위 숫자 목록의 평균은 11.67입니다.

중앙값 찾기

중앙값은 숫자 목록에서 가장 가운데에 있는 값입니다. 목록에 홀수 개수의 숫자가 있는 경우 손실된 숫자를 정렬하고 가장 중간에 있는 값을 선택합니다. 개수가 짝수이면 가장 중간에 있는 두 값을 선택하고 그 평균을 중앙값으로 사용합니다.

num_list =[21, 13, 19, 3,11,5]# sort the listnum_list.sort()# 중위수 위치 찾기 len(num_list) % 2 ==0:first_median =num_list[len(num_list) ) // 2] second_median =num_list[len(num_list) // 2 - 1] median =(first_median + second_median) / 2else:median =num_list[len(num_list) // 2]print(num_list)print("중간값 위 목록은 " + str(median))

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

[3, 5, 11, 13, 19, 21]위 목록의 중앙값:12.0

찾기 모드

모드는 목록에서 가장 자주 발생하는 번호입니다. 목록에 있는 각 숫자의 빈도를 찾은 다음 빈도가 가장 높은 숫자를 선택하여 계산합니다.

import collections# 계산할 요소 목록 modenum_list =[21, 13, 19, 13,19,13]# 목록 인쇄print(num_list)# 각 항목의 빈도 계산data =collections.Counter(num_list)data_list =dict (data)# 주파수가 있는 항목을 인쇄합니다.print(data_list)# 가장 높은 주파수를 찾습니다.max_value =max(list(data.values()))mode_val =[num for num, freq in data_list.items() if freq ==max_value]if len(mode_val) ==len(num_list):print("목록에 모드가 없습니다.")else:print("목록의 모드는 다음과 같습니다. " + ', '.join(map(str, mode_val))) 

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

[21, 13, 19, 13, 19, 13]{21:1, 13:3, 19:2}목록의 모드:13