나는 R에 상당히 새롭다. 그러나 나는 현재의 문제보다 훨씬 더 큰 문제를 다루었 다. 포럼을 검색하여 관련 주제를 찾았지만 아무도이 상황에 대한 트릭을 수행하지 않습니다. 각 날짜 인해 전송 중단에 하나 이상의 6 시간 시간 빈 (안 연속 데이터 집합을 갖는,새로운 테이블로 범주 적 수단을 전송하는 것
> head(diving)
tagID ddmmyy Hour.GMT. Hour.Local. X0 X3 X10 X20 X50 X100 X150 X200 X300 X400
1 122097 250912 0 9 0.0 0.0 0.3 12.0 15.3 59.6 12.8 0.0 0 0
2 122097 260912 0 9 0.0 2.4 6.9 5.5 13.7 66.5 5.0 0.0 0 0
3 122097 260912 6 15 0.0 1.9 3.6 4.1 12.7 39.3 34.6 3.8 0 0
4 122097 260912 12 21 0.0 0.2 5.5 8.0 18.1 61.4 6.7 0.0 0 0
5 122097 280912 6 15 2.4 9.3 6.0 3.4 7.6 21.1 50.3 0.0 0 0
6 122097 290912 18 3 0.0 0.2 1.6 6.4 41.4 50.4 0.0 0.0 0 0
이것은 태그 데이터 :
나는 14 개 변수의 184 개 관측 데이터 집합을 가지고). 각 6 시간 보관함에서, 동물이 탔던 깊이는 % 단위로 10 칸으로 나누어집니다. 따라서 X0 = 0-3m 사이에서 보낸 시간의 비율, X3 = 3-10m 사이에서 보낸 시간의 비율 등.
내가 처음으로하고 싶은 것은 각 깊이 저장소에서 평균 시간을 소비하고 그것을 플로팅하는 것입니다. 시작하려면, 나는 다음과 같은 한 :
avg0<-mean(diving$X0)
avg3<-mean(diving$X3)
avg10<-mean(diving$X10)
avg20<-mean(diving$X20)
avg50<-mean(diving$X50)
avg100<-mean(diving$X100)
avg150<-mean(diving$X150)
avg200<-mean(diving$X200)
avg300<-mean(diving$X300)
avg400<-mean(diving$X400)
이 시점에서, 나는 다음 결과 수단을 플롯하는 방법을 잘하지 않았다을, 그래서 나는 그들에게 목록을 만들어 :
divingmeans<-list(avg0, avg3, avg10, avg20, avg50, avg100, avg150, avg200, avg300, avg400)
상자 그림 (divingmeans를) X 축은 1:10이고 Y 축은 % 0-30입니다. 그러나 히스토그램뿐만 아니라 x 축은 순위 1 : 10이 아닌 카테고리 빈 이름 (예 : avg3 또는 X3)을 제공합니다.
> plot(divingmeans)
Error in xy.coords(x, y, xlabel, ylabel, log) :
'x' is a list, but does not have components 'x' and 'y'
> hist(divingmeans)
Error in hist.default(divingmeans) : 'x' must be numeric
나는 또한 시도했다 : :
> df<-as.data.frame(divingmeans)
> df
X3.33097826086957 X3.29945652173913 X8.85760869565217 X17.6461956521739 X30.2614130434783
1 3.330978 3.299457 8.857609 17.6462 30.26141
X29.3565217391304 X6.44510869565217 X0.664130434782609 X0.135869565217391 X0.0016304347826087
1 29.35652 6.445109 0.6641304 0.1358696 0.001630435
및
> df <- data.frame(matrix(unlist(divingmeans), nrow=10, byrow=T))
> df
matrix.unlist.divingmeans...nrow...10..byrow...T.
1 3.330978261
2 3.299456522
3 8.857608696
4 17.646195652
5 30.261413043
6 29.356521739
7 6.445108696
8 0.664130435
9 0.135869565
10 0.001630435
도의는의 종류를 제공하는 다음을 제공
HIST()와 플롯() 내가 찾고있는 테이블.
이 테이블을 적절한 테이블로 변환하기위한 근본적인 솔루션이 있어야한다는 것을 알고 있지만 필자의 삶에 대해 알아낼 수는 없습니다. 평균적으로 각 다이빙 빈에서 보낸 시간의 비율을 보여주는 기본 막대 그래프를 만들 수 있습니다. 이 목적을 위해 가장 적합한 형식은 col1 = bin (카테고리, 예 : avg50) 및 col2 = % (해당 카테고리에서 보낸 평균 시간 %)와 같은 두 개의 열이있는 테이블입니다.
또한 데이터가 다른 타이밍 저장소로 분할되어 있음을 알 수 있습니다. 결국 나는 시간별로 데이터를 분리하여 예를 들어 평균 다이빙 깊이가 주야간으로 이동하는지 등을 확인할 수 있기를 원합니다. 예를 들어, X0[which(Hour.GMT.=="6")]
을 선택하면이 초기 비트의 코드가 완성되면 시간별로 동일한 작업을 수행 할 수 있습니다. 이것에 팁은 또한 아주 환영받을 것입니다.
감사를 분석 할 수 있습니다, 얘들 아! 이 사람은 트릭을 아주 직설적으로하는 것처럼 보였습니다. 그런 다음 [when()] 명령을 사용하여 일별 휴지통으로 쉽게 구분할 수있었습니다. 매우 감사! – stewart6