중화사전망 - 자전 검색 - 파이썬으로 결과를 실행할 수 없는 이유는 무엇입니까?

파이썬으로 결과를 실행할 수 없는 이유는 무엇입니까?

Python 은 데이터 분석을 위한 도구로, 극차, 평균, 중앙값, 중수, 분산에 자주 사용됩니다. 그러나 python 에서 일반적으로 사용되는 외부 python 라이브러리 numpy 는 통계를 수행하므로 설치하기가 어렵지 않습니다. 하지만 단순히 극차, 평균, 중앙값, 대중 수, 분산 등을 구하는 것이 좋다. 다른 사람에게. py 프로그램을 주면 다른 기계에는 python numpy 가 없기 때문이다. 그러나 상황에 따라 달라진다. 수억 개의 데이터를 처리하려면 외부 파이썬 라이브러리 numpy 를 구성해야 합니다.

먼저 극차, 평균, 중앙값, 대중 수 및 분산이 무엇인지 돌아가 보겠습니다.

1, Range: 최대값과 최소값의 차이. 태그 값 변경의 최대 범위입니다. 영어: 범위

공식: R=Xmax-Xmin (여기서 Xmax 는 최대값, Xmin 은 최소값)

2. 평균: 데이터 그룹에 있는 모든 데이터의 합계를 데이터 수로 나눕니다. 데이터 세트의 추세를 반영하는 지표. 영어: 평균 수준

공식:

3. 중간: 제한된 숫자 세트의 경우 모든 관찰을 정렬하여 중간 중 하나를 중간 값으로 찾을 수 있습니다. 짝수 개의 관찰이 있는 경우 보통 중간 두 값의 평균을 중앙값으로 사용합니다. 영어: 중앙값

공식: 작은 것부터 큰 것까지 순서는? 그래서 n 이 홀수일 때, n 이 짝수일 때?

4. 중수: 중수는 빈도 분포표에서 샘플 관찰이 가장 자주 나타나는 그룹의 중앙값으로 주로 대규모 센서스 연구에 쓰인다. 영어: 모드

예를 들어 1, 2,3,3,4 의 대중 수는 3 이다.

그러나 두 개 이상의 숫자가 가장 많이 나타나는 경우 이러한 숫자는 이 데이터 세트의 패턴입니다.

예를 들어 1, 2,2,3,3,4 의 패턴은 2 와 3 입니다.

마찬가지로, 모든 데이터가 같은 횟수로 나타나면 이 데이터 세트에는 패턴이 없습니다.

예를 들면: 1, 2,3,4,5 에는 패턴이 없습니다.

5. 분산: 분산은 실제 값과 예상 값의 차이에 대한 제곱의 평균이며, 확률 이론 및 통계 분산에서 무작위 변수 또는 데이터 세트에 대한 불연속도의 측정입니다. 영어: 분산

공식: 또는 (즉, 확률론과 수리통계에서 분산은 제곱의 기대-예상 제곱)

따라서 위의 이론에 따르면 다음과 같은 코드를 얻을 수 있습니다.

을 눌러 섹션을 인쇄할 수도 있습니다 -응?

인쇄? 범위는 {0} 입니다. 형식 (math.range (arr)); -응?

인쇄? 평균 값은 {0:.2f} 입니다. 형식 (math.avg (arr)); -응?

인쇄? 중앙값은: {0} 입니다. 형식 (math.median (arr)); -응?

인쇄? 모드는 {0} 입니다. 형식 (math.mode (arr)); -응?

인쇄? 차이는 {0: .2f} 입니다. 형식 (수학). 분산 (arr));); -응?

인쇄? 차이는 {0: .2f} 입니다. 형식 (수학). 변수 2 (arr)); -응?

인쇄; -응?

# 성능 테스트?

Arraylist = []; -응?

뭐 때문에? 나? 네? 범위 (1, 1000000):?

Arraylist.append (I); -응?

Random.shuffle (ArrayList); -응?

Time _ start = time.time (); -응?

인쇄? 차이는 {0: .2f} 입니다. 형식 (수학). 분산 (ArrayList));); -응?

Time _ end = time.time (); -응?

인쇄? "{0}s" 입니다. 형식 (time _ end-time _ start); -응?

Time _ start = time.time (); -응?

인쇄? 차이는 {0: .2f} 입니다. 형식 (수학). Variance 2(ArrayList));); -응?

Time _ end = time.time (); -응?

인쇄? "{0}s" 입니다. 형식 (time _ end-time _ start); -응?

실행 결과는 다음과 같습니다.

이 과정에 대한 몇 가지 설명이 있습니다.

(1) 시간과 무작위적 소개는 주로 마지막 부분의 두 가지 분산 방법의 성능을 테스트하기 위한 것입니다. 일반적으로 위에서 정의한 Math 클래스를 사용하며 python 패키지를 도입하지 않습니다.

(2) 어떤 통계량이라도 구하고 나눗셈으로 먼저 int 를 float 으로 바꾸는 것을 주의해라. 그렇지 않으면 정확도가 심각하게 손실되어 최종 정답을 얻을 수 없다.

(3) 파이썬은 자신의 sum 을 가지고 목록에 있는 모든 요소의 합계를 구하고, 목록에 있는 max, min 값 max, min 을 찾고, 목록에 있는 요소를 작은 것부터 큰 것까지 정렬합니다. Sort () 는 모두 사용했고, 나머지는 자신의 현실일 수밖에 없었다.

(4) 형식 매개 변수가 문자열 배열로 전달되는 것을 고려할 필요가 없습니다. 이러한 도구 클래스는 모두 우리 자신이 사용하기 때문에 전달할 값을 직접 제어할 수 있습니다. 그렇게 많은 것을 고려할 필요가 없습니다.

(5) 패턴을 찾는 것이 가장 어렵다. 파이썬 자신의 방법이 필요 없기 때문에 목록을 반환해야 하기 때문이다. 패턴의 수가 불확실하기 때문에 통계 배열에서 가장 빈도가 높은 수가 나타날 때 python 사전 dict 와 Python 컨테이너 클래스를 사용합니다 (열기 링크 클릭). 이 사전에서 키는 목록의 숫자이고 values 는 나타나는 숫자입니다. 그런 다음 최대 발생 횟수를 구하고 마지막으로 최대값에 해당하는 키를 찾습니다. 여기서 count_dict.items () 는 사전에서 키 값 쌍의 배열 세트를 반환하고 count_dict.values () 는 사전의 값 세트를 반환합니다. 물론 count_dict.keys () 도 마찬가지입니다

(6) 분산을 구하는 두 가지 방법이 있기 때문에 이 프로그램은 마지막 부분에 백만 레벨 목록을 생성하고 이 두 가지 분산 방법을 테스트했습니다. 놀랍게도, 우리 같은 어리석은 인간들이 가장 싫어하고 가장 사용하기 어려운 정사각형-가장 쓸모없는 정사각형-정사각형의 기대는 더 잘 기억하고 더 많이 쓰는 정사각형보다 더 잘 기대된다. 。 위의 계산 결과에서 알 수 있듯이, 이런 분산 구하는 방법은 두 배나 빠르다! 이것은 스마트 컴퓨터와 어리석은 인간의 차이입니다 ~

(7) 마지막으로 python 을 콘솔에 인쇄할 수 있습니다. 사실 더 잘 인쇄 할 수 있습니다. 줄을 바꾸지 않으면 인쇄 후 쉼표를 추가한 다음 무언가를 인쇄하거나 str 을 사용하여 값을 문자열로 변환한 다음 일반 문자열과 연결해야 합니까? 문자열의 형식 방법과 Print 를 더하면 c 언어의 printf 에 해당하며, python 형식은 {0}, {1}...{0:.2f} 는 매개 변수를 내보낼 때 소수점 두 자리를 유지한다는 것을 의미합니다.

전문을 읽다

저작권 고지 사항: 이 기사는 블로거 오리지널 문장, 없음