2012-10-24 6 views
1

R의 히스토그램을 생성하는 다른 코드에서 특정 시점의 기계에 대한 전력 (와트) 값의 빈도를 알 수 있습니다.히스토그램의 bin 당 평균 및 표준 편차

히스토그램은 "n"개의 빈 또는 셀로 나뉩니다.

각 값마다 평균값과 표준 편차를 계산하는 쉬운 방법이 있습니까? 그래서 예를 들어

,

bin 1, mean = 0.5, sd=0.01 
bin 2, mean = 3.5, sd=0.23 
bin 3, mean = 4.5, sd=0.35 

어떤 아이디어가?

+0

당신은 당신이 히스토그램이 있는지 확인 있습니까? 히스토그램은 데이터 포인트가 특정 간격에 속하는 횟수를 나타냅니다. 귀하의 질문은 오히려 시간 저장소별로 색인화 된 데이터 (주파수)를 갖는 것과 같습니다. 이 경우, 간단히'by()'가 문제를 해결해야한다. 데이터의 대표 샘플을 게시 할 수 있습니까? –

답변

1

예. 따라서 기계의 힘을 관찰 한 데이터 프레임 벡터 또는 열이 있다고 가정 해 봅시다. P.

P <- c(100,80,100,120,80) 

그래서 당신이 원하는 그러나 쓰레기통에 그것을 깰 :

C <- cuts(P, breaks=3) 

휴식 휴식 레이블을 "숫자"

> C <- as.numeric(C) 
> C 
[1] 2,1,3,2,1 

을로 이제 당신은 각각

by(P, C, mean) 
by(P, C, sd) 
휴식에 의해 정보를 얻을 수 있습니다

또는 모두 에테르 :

by(P, C, function(x) c(mean(x), sd(x)) 

그리고 더 독자 친화적 인 :

by(P, C, function(x) paste(c("Mean : ", "SD : "), c(mean(x), sd(x)), sep=" | ")) 
+0

감사합니다. 여기에 제가 끝난 일이 있습니다 ... 저는 R에서 새롭기 때문에 이것이 이상 할 수도 있습니다 ... histmdata = hist (mdata $ power, plot = FALSE) breaks = histmdata [[1]] averages = c (평균값 (서브 세트 (mdata $ power, mdata $ power breaks [1]))) stdevs = c (sd (mdata $ power, mdata $ power breaks [1]))) bin_summary = data.frame (평균, 표준 시간) – torenunez