데이터 인사이트 스터디 내용을 관리하는 블로그 입니다.

Data Insight Study Blog

  • Join Us on Facebook!
  • Follow Us on Twitter!
  • LinkedIn
  • Subcribe to Our RSS Feed

3. Examining and Visualizing Data > Visualizing the Data > Refactoring Neighborhoods

지역 리팩토링

plot 챠트에서 보이는 것처럼, 서로 가까이 있는 지역 사이에서 많은 트래픽이 발생합니다. 멀리 떨어져 있는 지역 간의 운행의 경우, 시내 중심을 통과할 경우 발생하는 대부분의 트래픽을 주변의 우회 경로를 사용하여 피할 수 있기 때문에, 이러한 결과는 그리 놀라운 일이 아닙니다. 우리는 또한 일반적으로 미드 타운(midtown) 지역과 도심(downtown), 특히 차이나타운(Chinatown)과 리틀 이태리(Little Italy) 사이에서 높은 트래픽을 볼 수 있습니다.

위의 챠트를 그리기 위해서, pickup_nb 및 dropoff_nb에 대한 factor의 level 순서를 변경했습니다. 이러한 순서 변경은 데이터 자체에서 발생하는 것이 바람직 합니다. 그렇지 않으면 pickup_nb 또는 dropoff_nb와 관련된 챠트를 생성할 때마다 factor의 level 순서를 매번 변경해야만 합니다. 이제 순서를 변경하고 이 내용을 전체 데이터에 적용해 보겠습니다. 변경을 위한 다음 두 가지 옵션이 있습니다.

  1. rxDataStep을 transforms 인수와 함께 사용하고, Base R 함수 factor를 사용하여 factor의 level 순서를 바꿀 수 있습니다.
  2. rxFactor 함수와 factorInfo를 사용하여 factor의 level을 조작할 수 있습니다. rxFactors는 메타 데이터 수준에서 작동하기 때문에 더 빠르다는 장점이 있습니다. 단점은 Hadoop이나 Spark와 같은 다른 계산 컨텍스트에서는 작동하지 않을 수 있다는 것입니다.

두 가지 방법 모두 아래에서 보실 수 있습니다.

# factor의 level 순서를 바꾸기 위한 첫 번째 방법
rxDataStep(inData = mht_xdf, outFile = mht_xdf,
           transforms = list(pickup_nb = factor(pickup_nb, levels = newlevels),
                             dropoff_nb = factor(dropoff_nb, levels = newlevels)),
           transformObjects = list(newlevels = unique(newlevs)),
           overwrite = TRUE)
# factor의 level 순서를 바꾸기 위한 두 번째 방법
rxFactors(mht_xdf, outFile = mht_xdf, factorInfo = list(pickup_nb = list(newLevels = unique(newlevs)), dropoff_nb = list(newLevels = unique(newlevs))), overwrite = TRUE)
답글 기능이 비활성화되어 있습니다