여기

2014-11-12 7 views
0

내 데이터여기

실수로

hpy2

HappinessBW10.11.2000.08 LifeExpectancy.2004 Anger.2006.2009 Sadness.2011.2013 
1      6.35   (58.5,82.2]    16     6 
3      4.63   (34.9,58.5]    16    16 
4      5.78   (58.5,82.2]    20    11 
5      5.20   (34.9,58.5]    16    10 
6      5.56   (58.5,82.2]    22     8 
7      5.02   (58.5,82.2]    36    25 
8      4.92   (34.9,58.5]    16    19 
9      4.25   (34.9,58.5]    20    27 
10      4.58   (58.5,82.2]    11    21 
12      4.96   (34.9,58.5]    22    17 
14      4.28   (34.9,58.5]    10     6 
15      6.19   (58.5,82.2]    18    33 
16      6.64   (58.5,82.2]    24    19 
17      5.06   (58.5,82.2]    25    22 
18      5.49   (58.5,82.2]    16    19 
19      5.90   (58.5,82.2]    15    20 

> 

입니다 R 내 변수를 취소하십시오 잘라 내 LifeExpectancy.2004

hpy2$LifeExpectancy.2004 <- cut(hpy2$LifeExpectancy.2004, 2) 

을에 절단 기능을 사용 변수에서 볼 수 있듯이, 그것은 데이터의 불쾌한 분할을 나에게 주었다. 이 방법을 취소 할 수있는 방법이 있는지 알고 싶습니다.

+3

아니요. 원래 값은 다른 곳에 저장하지 않으면 사라집니다. – joran

+2

다 대일 변환은 변환 할 수 없습니다. – Gregor

답변

0
간격이 모호함을

을 소개하기 때문에 내가

> mtcars$cyl 
[1] 6 6 4 6 8 6 8 4 4 6 6 8 8 8 8 8 8 4 4 4 4 8 8 8 8 4 4 4 8 6 8 4 

> cut(mtcars$cyl, 2) 

[1] (4,6] (4,6] (4,6] (4,6] (6,8] (4,6] (6,8] (4,6] (4,6] (4,6] (4,6] (6,8] (6,8] (6,8] (6,8] 
[16] (6,8] (6,8] (4,6] (4,6] (4,6] (4,6] (6,8] (6,8] (6,8] (6,8] (4,6] (4,6] (4,6] (6,8] (4,6] 
[31] (6,8] (4,6] 
Levels: (4,6] (6,8] 

> str(ycut) 
Factor w/ 2 levels "(4,6]","(6,8]": 1 1 1 1 2 1 2 1 1 1 ... 

이의이 mtcars의 $의 CYL [3] = 4의 세 번째 요소의 세 번째 요소를 살펴 보자 다음 예제를 가지고는 가능하지 말 것

컷은 (4,6)입니다. 우리가 알고있는 모든 것은 숫자 벡터의 원래 값이 그 범위의 어딘가에 있다는 것입니다. include.lowest = FALSE의 기본 동작은 4로 끝나는 독점적 인 끝점을 갖는 이유입니다. 두 번째 예제를 보자. mtcars $ cyl [4] = 6. 4 번째 절의 요소는 (4,6)이며, 이는 다시 4 번째 요소를 알려준다. 수치 벡터의 숫자는 어딘가의에 해당합니다. 그 네 번째 요소는 5.5 일 수 있고 여전히 사실 일 것입니다. 그래서 일반적인 cut은 역환이 아니지만 수치 벡터와 브레이크 카운트의 특정 선택을 위해 역전 될 수 있다고 추측 하겠지만 부동 소수점 데이터를 보면 나는 그렇지 않을 것이라고 말하고 싶습니다.