태그 보관물: arithmetic

arithmetic

표준 편차 계산 답변은 전체 프로그램 또는 기능 일

도전

숫자 목록이 주어지면 목록의 모집단 표준 편차를 계산하십시오.

모집단 표준 편차를 계산하려면 다음 방정식을 사용하십시오.

입력

입력은 모든 형식 (목록, 문자열 등)으로 된 정수 목록입니다. 몇 가지 예 :

56,54,89,87
67,54,86,67

숫자는 항상 정수입니다.

STDIN 또는 함수 인수가 입력됩니다.

산출

출력은 부동 소수점 숫자 여야합니다.

규칙

내장 함수를 사용하여 표준 편차를 찾을 수 있습니다.

귀하의 답변은 전체 프로그램 또는 기능 일 수 있습니다.

10035, 436844, 42463, 44774 => 175656.78441352615

45,67,32,98,11,3 => 32.530327730015607

1,1,1,1,1,1 => 0.0

승리

가장 짧은 프로그램이나 기능이 승리합니다.

리더 보드

var QUESTION_ID=60901,OVERRIDE_USER=30525;function answersUrl(e){return"http://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"http://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var r=e.size,a=s.size;return r-a});var s={},r=1,a=null,n=1;e.forEach(function(e){e.size!=a&&(n=r),a=e.size,++r;var t=jQuery("#answer-template").html();t=t.replace("{{PLACE}}",n+".").replace("{{NAME}}",e.user).replace("{{LANGUAGE}}",e.language).replace("{{SIZE}}",e.size).replace("{{LINK}}",e.link),t=jQuery(t),jQuery("#answers").append(t);var o=e.language;/<a/.test(o)&&(o=jQuery(o).text()),s[o]=s[o]||{lang:e.language,user:e.user,size:e.size,link:e.link}});var t=[];for(var o in s)s.hasOwnProperty(o)&&t.push(s[o]);t.sort(function(e,s){return e.lang>s.lang?1:e.lang<s.lang?-1:0});for(var c=0;c<t.length;++c){var i=jQuery("#language-template").html(),o=t[c];i=i.replace("{{LANGUAGE}}",o.lang).replace("{{NAME}}",o.user).replace("{{SIZE}}",o.size).replace("{{LINK}}",o.link),i=jQuery(i),jQuery("#languages").append(i)}}var ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe",COMMENT_FILTER="!)Q2B_A2kjfAiU78X(md6BoYk",answers=[],answers_hash,answer_ids,answer_page=1,more_answers=!0,comment_page;getAnswers();var SCORE_REG=/<h\d>\s*([^\n,]*[^\s,]),.*?(\d+)(?=[^\n\d<>]*(?:<(?:s>[^\n<>]*<\/s>|[^\n<>]+>)[^\n\d<>]*)*<\/h\d>)/,OVERRIDE_REG=/^Override\s*header:\s*/i;
body{text-align:left!important}#answer-list,#language-list{padding:10px;width:290px;float:left}table thead{font-weight:700}table td{padding:5px}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <link rel="stylesheet" type="text/css" href="//cdn.sstatic.net/codegolf/all.css?v=83c949450c8b"> <div id="answer-list"> <h2>Leaderboard</h2> <table class="answer-list"> <thead> <tr><td></td><td>Author</td><td>Language</td><td>Size</td></tr></thead> <tbody id="answers"> </tbody> </table> </div><div id="language-list"> <h2>Winners by Language</h2> <table class="language-list"> <thead> <tr><td>Language</td><td>User</td><td>Score</td></tr></thead> <tbody id="languages"> </tbody> </table> </div><table style="display: none"> <tbody id="answer-template"> <tr><td>{{PLACE}}</td><td>{{NAME}}</td><td>{{LANGUAGE}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr></tbody> </table> <table style="display: none"> <tbody id="language-template"> <tr><td>{{LANGUAGE}}</td><td>{{NAME}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr></tbody> </table>


답변

클립 , 3

.sk

.s표준 편차이며 k형식으로 입력을 구문 분석합니다 {1,2,3}.


답변

수학, 24 22 바이트

Mathematica에는 StandardDevi...모집단 표준 편차가 아닌 표본 표준 편차를 계산 하는 내장 오 …가 있습니다.

그러나 만약 우리가 Variance… 오 … 같은 거래를 사용한다면 어떨까요?

그러나 또 다른 관련 내장 기능이 있습니다.

CentralMoment[#,2]^.5&

예 🙂

이것은 22 바이트에서도 작동합니다.

Mean[(#-Mean@#)^2]^.5&

그리고 이것은 27입니다.

N@RootMeanSquare[#-Mean@#]&

답변

옥타브, 14 바이트

g=@(a)std(a,1)

ideone에서 사용해보십시오 .


답변

kdb + , 3 바이트

dev

APL 편차 중 하나 는 이것을 내장형 으로 가져야했습니다.

시운전

q)dev 56, 54, 89, 87
16.53028
q)f:dev
q)f 10035, 436844, 42463, 44774
175656.8
q)f 45,67,32,98,11,3
32.53033

답변

Dyalog APL, 24 23 21 20 19 17 바이트

*∘.5∘M×⍨-M×M←+/÷≢

이것은 명명되지 않은 monadic 기능 트레인을 정의하며, 이는 다음 기능과 동일합니다.

{.5*⍨M(×⍨⍵)-M⍵×(M←{(+/⍵)÷≢⍵})⍵}

온라인에서 사용해보십시오 TryAPL에서 .

작동 원리

코드는 여러 열차로 구성됩니다.

M←+/÷≢

이것은 올바른 인수에 대해 ( 모든 요소의 합) 및 (길이)를 M실행 한 다음 결과에 적용 (분할)하여 입력의 산술 평균을 반환 하는 모나 딕 3 트레인 (포크) 을 정의합니다 .+/÷

M×M

이것은 M올바른 인수에 적용 되고 두 번째로 반복 ×되며 결과에 (제품)을 적용 하여 μ 2를 반환 하는 또 다른 포크입니다 .

×⍨-(M×M)

이것은 이전에 설명한 산술 평균의 제곱을 계산 ×⍨하고 올바른 인수에 (자체가있는 제품) 적용하고 마지막으로 적용되는 또 다른 포크입니다.- 하고 결과에 (차이) .

입력 (x 1 ,…, x N ) 의 경우이 함수는 (x 12 ,…, x N2 )를 반환합니다 .

*∘.5∘M

이 작성된 함수는 M올바른 인수에 적용됩니다 *∘.5. 후자는 올바른 인수 카레를 사용하여지도 입력 aa*0.5(square root of a)에 적용합니다.

(*∘.5∘M)(×⍨-(M×M))

마지막으로,이 모나 딕 2 트레인 (위)은 오른쪽 기능을 먼저 적용한 다음 왼쪽을 결과에 적용하여 다음과 같이 표준 편차를 계산합니다.


답변

R, 41 40 39 36 30 28 바이트

암호

덕분에 비커 , 알렉스 A.MickyT 많은 바이트.

cat(sd(c(v=scan(),mean(v))))

오래된 코드

v=scan();n=length(v);sd(v)/(n/(n-1))**0.5
m=scan();cat(sqrt(sum(mean((m-mean(m))^2))))
m=scan();cat(mean((m-mean(m))^2)^.5)

이는 모집단 표준 편차를 산출해야합니다.


답변

Pyth, 20 19 17 13 바이트

@.O^R2-R.OQQ2

4 바이트를 골라 낸 @FryAmTheEggman에게 감사합니다!

온라인으로 사용해보십시오.

작동 원리

        .OQ    Compute the arithmetic mean of the input (Q).
      -R   Q   Subtract the arithmetic mean of all elements of Q.
   ^R2         Square each resulting difference.
 .O            Compute the arithmetic mean of the squared differences.
@           2  Apply square root.