1
처음으로 게시했습니다. 주로 머리를 벽에 두드리는 데 지쳤습니다.데이터 세트를 바꿀 수있는 ID 만들기
미리 살펴 주셔서 감사합니다. 나는 그것을 바꿀 것을 시도하고있다
state city x y z
1 OR Portland 8 10 1
2 OR Portland 8 10 4
3 OR Portland 8 10 10
4 NY New York 29 15 10
5 NY New York 29 15 18
6 NJ Trenton 8 10 50
7 NJ Trenton 8 10 60
8 NJ Trenton 8 10 70
9 WA Seattle 1 70 6
10 WA Seattle 1 70 7
11 WA Seattle 1 70 8
12 WA Seattle 1 70 9
13 WA Seattle 1 70 10
14 WA Seattle 1 70 11
같이하는 방법 : 나는 패키지 reshape2하고 코드를 사용하고있다
state city x y z.1 z.2 z.3 z.4 z.5 z.6
OR Portland 8 10 1 4 10
NY New York 29 15 10 18
NJ Trenton 8 10 50 60 70
WA Seattle 1 70 6 7 8 9 10 11
나는 다음과 같습니다 데이터 프레임을 가지고
이는 id.vars 집합마다 변수 개수를 반환합니다.
는 또한 노력이 :state city x y 1 4 6 7 etc...
OR Portland 8 10 1 1 0 0
NY New York 29 15 0 0 0 0
NJ Trenton 8 10 0 0 0 0
WA Seattle 1 70 0 0 1 1
이것은 내가 무엇을 찾고에 가까운하지만, 정보를 찾고 사용하기가 매우 어려울 것입니다 : 다음과 같습니다
wide <- dcast(df, state + city + x + y ~ value)
.
내가 틀렸다고 말하지만 state, city, x, y의 각 중복 값에 대해 id 변수가 필요한 것 같습니다.
필자는 아래 에서처럼 중복 값에 번호를 매기는 열을 만들 수있는 것을 생각하거나 찾지 못했습니다.
state city x y z num
1 OR Portland 8 10 1 1
2 OR Portland 8 10 4 2
3 OR Portland 8 10 10 3
4 NY New York 29 15 10 1
5 NY New York 29 15 18 2
6 NJ Trenton 8 10 50 1
7 NJ Trenton 8 10 60 2
8 NJ Trenton 8 10 70 3
9 WA Seattle 1 70 6 1
10 WA Seattle 1 70 7 2
11 WA Seattle 1 70 8 3
12 WA Seattle 1 70 9 4
13 WA Seattle 1 70 10 5
14 WA Seattle 1 70 11 6
솔루션을 계속 찾을 수있는 방법에 대한 도움이나 의견을 보내 주시면 감사하겠습니다.
보다도,
-n
흠 그래도 손실 내가 뭔가를 놓친 것을 - 나는 그게 진짜 복제라고 생각하지 마라. 링크 된 질문은 순차적 인 i.ds를 만드는 것을 찾는 반면,이 질문은 주 및 도시별로 기존 ID의 목록을 묻습니다. 'library (data.table)'을 사용하면 여기에'dt [,. (z = list (z)), by =. (state, city, x, y)]'를 사용할 수 있습니다. – dww
@dww - 문제 -'dat $ time <- ave (rownames (dat), dat [c ("state", "city", "x", "y")], FUN = seq_along); reshape (dat, idvar = c ("state", "city", "x", "y"), direction = "wide")'예를 들어 순차적 ID를 생성하면됩니다. – thelatemail
도움을 주셔서 감사합니다! 나는 그것을 함께 조각 낼 수 있어야한다. – nhol