UX 디자이너를 위한 정량적 데이터 도구

게시 됨: 2022-03-10
빠른 요약 ↬ 데이터 분석, 도구 및 워크플로는 데이터 중심 세계의 UX 디자이너, 특히 시각화 또는 데이터 제품 작업을 하는 사람들에게 매우 유용합니다.

많은 UX 디자이너는 통계와 수학에 대한 깊은 지식이 필요하다고 생각하여 데이터를 다소 두려워합니다. 고급 데이터 과학의 경우에는 사실일 수 있지만 대부분의 UX 디자이너가 요구하는 기본 연구 데이터 분석에는 해당되지 않습니다. 우리는 점점 더 데이터 중심적인 세계에 살고 있기 때문에 기본 데이터 활용 능력은 UX 디자이너뿐만 아니라 거의 모든 전문가에게 유용합니다.

Google의 상호작용 디자이너인 Aaron Gitlin은 많은 디자이너가 아직 데이터 중심적이지 않다고 주장합니다.

"많은 기업이 스스로를 데이터 중심 기업으로 홍보하지만 대부분의 디자이너는 본능, 협업 및 질적 연구 방법에 따라 움직입니다."

— Aaron Gitlin, "데이터 인식 디자이너 되기"

이 기사를 통해 저는 UX 디자이너에게 데이터를 일상 생활에 통합할 수 있는 지식과 도구를 제공하고 싶습니다.

하지만 먼저, 몇 가지 데이터 개념

이 기사에서는 행과 열이 있는 테이블에 표시할 수 있는 데이터를 의미하는 구조화된 데이터에 대해 설명합니다. Devin Pickell(G2 Crowd의 콘텐츠 마케팅 전문가, 데이터 및 분석에 대해 기고함)이 "구조화된 데이터와 비구조화된 데이터 - 차이점은 무엇입니까?"라는 기사에서 지적했듯이 비정형 데이터는 그 자체로 주제이기 때문에 분석하기가 더 어렵습니다. 구조화된 데이터를 테이블 형식으로 표현할 수 있는 경우 주요 개념은 다음과 같습니다.

데이터세트

분석하려는 전체 데이터 집합입니다. 예를 들어 Excel 표가 될 수 있습니다. 데이터 세트를 저장하는 또 다른 인기 있는 형식은 CSV(쉼표로 구분된 값 파일)입니다. CSV 파일은 테이블과 같은 정보를 저장하는 데 사용되는 간단한 텍스트 파일입니다. 각 CSV 행은 테이블의 행에 해당하고 각 CSV 행에는 테이블 셀에 해당하는 쉼표로 (자연스럽게) 구분된 값이 있습니다.

데이터 포인트

데이터 세트 테이블의 단일 행이 데이터 포인트입니다. 그런 식으로 데이터 세트는 데이터 포인트의 모음입니다.

데이터 변수

데이터 포인트 행의 단일 값은 데이터 변수(간단히 테이블 셀)를 나타냅니다. 데이터 변수에는 질적 변수와 양적 변수의 두 가지 유형이 있습니다. 정성적 변수(범주형 변수라고도 함)에는 color = red/green/blue 와 같이 불연속적인 값 집합이 있습니다. 양적 변수에는 height = 167 과 같은 숫자 값이 있습니다. 질적 변수와 달리 양적 변수는 모든 값을 취할 수 있습니다.

점프 후 더! 아래에서 계속 읽기 ↓

데이터 프로젝트 생성

이제 기본 사항을 알았으므로 손을 더럽히고 첫 번째 데이터 프로젝트를 만들 차례입니다. 프로젝트의 범위는 데이터 가져오기, 처리 및 플로팅의 전체 데이터 흐름을 통해 데이터 집합을 분석하는 것입니다. 먼저 데이터 세트를 선택한 다음 데이터 분석을 위한 도구를 다운로드하여 설치합니다.

자동차 데이터세트

이 기사의 목적을 위해 간단하고 직관적인 자동차 데이터 세트를 선택했습니다. 데이터 분석은 우리가 자동차에 대해 이미 알고 있는 것을 단순히 확인시켜 줄 것입니다. 우리의 초점이 데이터 흐름과 도구에 있기 때문에 괜찮습니다.

가장 큰 무료 데이터 세트 소스 중 하나인 Kaggle에서 중고차 데이터 세트를 다운로드할 수 있습니다. 먼저 등록해야 합니다.

파일 다운로드 후 열어서 살펴보세요. 정말 큰 CSV 파일이지만 요점을 파악해야 합니다. 이 파일의 행은 다음과 같습니다.

 19500,2015,2965,Miami,FL,WBA3B1G54FNT02351,BMW,3

보시다시피, 이 데이터 포인트에는 쉼표로 구분된 여러 변수가 있습니다. 이제 데이터 세트가 있으므로 도구에 대해 조금 이야기해 보겠습니다.

무역의 도구

R 언어와 RStudio를 사용하여 데이터 세트를 분석합니다. R은 데이터 과학자뿐만 아니라 금융 시장, 의학 및 기타 여러 분야의 사람들이 사용하는 매우 인기 있고 배우기 쉬운 언어입니다. RStudio는 R 프로젝트가 개발되는 환경이며, UX 디자이너로서 우리의 요구에 충분한 것 이상의 무료 버전이 있습니다.

일부 UX 디자이너는 데이터 워크플로에 Excel을 사용합니다. 그런 의미가 있다면 R을 사용해 보세요. R은 배우기 쉽고 Excel보다 더 유연하고 강력하기 때문에 좋아할 가능성이 큽니다. 도구 키트에 R을 추가하면 달라질 것입니다.

도구 설치

먼저 R과 RStudio를 다운로드하여 설치해야 합니다. R을 먼저 설치한 다음 RStudio를 설치해야 합니다. R 및 RStudio의 설치 프로세스는 간단하고 간단합니다.

프로젝트 설정

설치가 완료되면 프로젝트 폴더를 생성합니다. 저는 이것을 used-cars-prj 라고 불렀습니다. 해당 폴더에서 data 라는 하위 폴더를 만든 다음 데이터 세트 파일(Kaggle에서 다운로드)을 해당 폴더에 복사하고 이름을 used-cars.csv 로 바꿉니다 . 이제 프로젝트 폴더( used-cars- prj ) 로 돌아가 used-cars.r 이라는 일반 텍스트 파일을 만듭니다. 아래 스크린샷과 같은 구조로 끝나야 합니다.

프로젝트 폴더 구조
프로젝트 폴더 구조(큰 미리보기)

이제 폴더 구조가 준비되었으므로 RStudio를 열고 새 R 프로젝트를 만들 수 있습니다. 파일 메뉴에서 새 프로젝트... 를 선택하고 두 번째 옵션인 기존 디렉토리 를 선택합니다. 그런 다음 프로젝트 디렉토리( used-cars-prj )를 선택하십시오. 마지막으로 Create Project 버튼을 누르면 완료됩니다. 프로젝트가 생성되면 RStudio에서 used -cars.r 을 엽니다. 이 파일은 모든 R 코드를 추가할 파일입니다.

데이터 가져오기

used-cars.csv 파일에서 데이터를 읽기 위해 used-cars.r 에 첫 번째 줄을 추가합니다. CSV 파일은 데이터를 저장하는 데 사용되는 일반 텍스트 파일일 뿐입니다. R 코드의 첫 번째 줄은 다음과 같습니다.

 cars <- read.csv("./data/used-cars.csv", stringsAsFactors = FALSE, sep=",")

약간 위협적으로 보일 수 있지만 실제로는 그렇지 않습니다. 그건 그렇고, 이것은 전체 기사에서 가장 복잡한 줄입니다. 여기에 있는 것은 세 개의 매개변수를 사용하는 read.csv 함수입니다.

첫 번째 매개변수는 읽을 파일입니다. 이 경우에는 데이터 폴더에 있는 used-cars.csv 입니다. 두 번째 매개변수 stringsAsFactors=FALSE 는 "BMW" 또는 "Audi"와 같은 문자열이 요인(범주형 데이터의 경우 R 전문 용어)으로 변환되지 않도록 설정됩니다. red/green/blue . 마지막으로 세 번째 매개변수인 sep="," 은 CSV 파일에서 값을 구분하는 데 사용되는 구분 기호의 종류(쉼표)를 지정합니다.

CSV 파일을 읽은 후 데이터는 cars 데이터 프레임 개체에 저장됩니다. 데이터 프레임 은 2차원 데이터 구조(예: Excel 테이블)로, R에서 데이터를 조작하는 데 매우 유용합니다. 라인을 도입하고 실행하면 cars 데이터 프레임이 생성됩니다. RStudio의 오른쪽 위 사분면을 보면 환경 탭의 데이터 섹션에서 cars 데이터 프레임을 확인할 수 있습니다. 자동차 를 두 번 클릭하면 RStudio의 왼쪽 상단 사분면에 새 탭이 열리고 cars 데이터 프레임이 표시됩니다. 예상대로 Excel 테이블처럼 보입니다.

자동차 원시 데이터 프레임
자동차 원시 데이터 프레임(큰 미리보기)

이것은 실제로 우리가 Kaggle에서 다운로드한 원시 데이터입니다. 하지만 데이터 분석을 하고 싶기 때문에 먼저 데이터셋을 처리해야 합니다.

데이터 처리

처리란 수행하려는 분석 유형을 준비하기 위해 데이터 세트에 정보를 제거, 변환 또는 추가하는 것을 의미합니다. 데이터 프레임 개체에 데이터가 있으므로 이제 데이터 조작을 위한 강력한 라이브러리인 dplyr 라이브러리를 설치해야 합니다. R 환경에 라이브러리를 설치하려면 R 파일 맨 위에 다음 줄을 작성해야 합니다.

 install.packages("dplyr")

그런 다음 현재 프로젝트에 라이브러리를 추가하기 위해 다음 줄을 사용합니다.

 library(dplyr)

dplyr 라이브러리가 프로젝트에 추가되면 데이터 처리를 시작할 수 있습니다. 우리는 정말 큰 데이터 세트를 가지고 있으며 가격과 상관 관계를 지정하기 위해 동일한 자동차 제조업체 및 모델을 나타내는 데이터만 필요합니다. 다음 R 코드를 사용하여 BMW 3 시리즈에 관한 데이터만 유지하고 나머지는 제거합니다. 물론 데이터 세트에서 다른 제조업체와 모델을 선택할 수 있으며 동일한 데이터 특성을 가질 것으로 기대할 수 있습니다.

 cars <- cars %>% filter(Make == "BMW", Model == "3")

이제 우리는 11,000개 이상의 데이터 포인트를 포함하고 있지만 더 관리하기 쉬운 데이터 세트를 갖게 되었으며 이는 자동차의 가격, 연식 및 주행 거리 분포, 그리고 이들 간의 상관 관계를 분석하는 우리의 의도된 목적에 맞습니다. 이를 위해 "Price", "Year" 및 "Mileage" 열만 유지하고 나머지는 제거해야 합니다. 이것은 다음 행으로 수행됩니다.

 cars <- cars %>% select(Price, Year, Mileage)

다른 열을 제거한 후 데이터 프레임은 다음과 같습니다.

자동차 반처리 데이터 프레임
자동차 반처리 데이터 프레임(큰 미리보기)

데이터 세트에 한 가지 더 변경하려는 사항이 있습니다. 제조 연도를 자동차의 연식으로 바꾸는 것입니다. 다음 두 줄을 추가할 수 있습니다. 첫 번째 줄은 나이를 계산하고 두 번째 줄은 열 이름을 변경합니다.

 cars <- cars %>% mutate(Year = max(Year) - Year) cars <- cars %>% rename(Age = Year)

마지막으로 전체 처리된 데이터 프레임은 다음과 같습니다.

자동차 완전 처리 데이터 프레임
자동차 완전 처리 데이터 프레임(큰 미리보기)

이 시점에서 우리의 R 코드는 다음과 같을 것이며 이것이 데이터 처리를 위한 것입니다. 이제 R 언어가 얼마나 쉽고 강력한지 알 수 있습니다. 몇 줄의 코드만으로 초기 데이터 세트를 상당히 극적으로 처리했습니다.

 install.packages("dplyr") library(dplyr) cars = read.csv("./data/cars.csv", stringsAsFactors = FALSE, sep=",") cars <- cars %>% filter(Make == "BMW", Model == "3") cars <- cars %>% select(Price, Year, Mileage) cars <- cars %>% mutate(Year = max(Year) - Year) cars <- cars %>% rename(Age = Year)

데이터 분석

이제 데이터가 올바른 모양이 되었기 때문에 플롯을 만들 수 있습니다. 이미 언급했듯이 우리는 개별 변수의 분포와 이들 간의 상관이라는 두 가지 측면에 초점을 맞출 것입니다. 가변 분포는 중고차의 중간 또는 고가로 간주되는 가격 또는 특정 가격을 초과하는 자동차의 비율을 이해하는 데 도움이 됩니다. 자동차의 연식과 주행거리도 마찬가지입니다. 반면에 상관 관계는 연령 및 주행 거리와 같은 변수가 서로 어떻게 관련되어 있는지 이해하는 데 도움이 됩니다.

즉, 변수 분포를 위한 히스토그램과 상관 관계를 위한 산점도라는 두 가지 종류의 데이터 시각화를 사용할 것입니다.

가격 분포

R 언어로 자동차 가격 히스토그램을 그리는 것은 다음과 같이 쉽습니다.

 hist(cars$Price)

작은 팁: RStudio에 있다면 코드를 한 줄씩 실행할 수 있습니다. 예를 들어, 우리의 경우 히스토그램을 표시하려면 위의 라인만 실행하면 됩니다. 이미 한 번 실행했기 때문에 모든 코드를 다시 실행할 필요가 없습니다. 히스토그램은 다음과 같아야 합니다.

자동차 가격 분포 히스토그램
자동차 가격 분포 히스토그램(큰 미리보기)

히스토그램을 보면 자동차 가격이 종 모양으로 분포되어 있음을 알 수 있으며 이는 우리가 예상한 것입니다. 대부분의 자동차는 중간 범위에 속하며, 우리는 양쪽으로 이동할수록 점점 더 적어집니다. 자동차의 거의 80%가 $10,000 ~ $30,000 USD이고 최대 2,500대 이상의 자동차가 $20,000 ~ $25,000 USD입니다. 왼쪽에는 $5,000 USD 미만의 자동차가 약 150대 정도 있고 오른쪽에는 더 적습니다. 이러한 도표가 데이터에 대한 통찰력을 얻는 데 얼마나 유용한지 쉽게 알 수 있습니다.

연령 분포

자동차 가격과 마찬가지로 유사한 선을 사용하여 자동차의 연령 히스토그램을 플로팅합니다.

 hist(cars$Age)

다음은 히스토그램입니다.

자동차 연령 분포 히스토그램
자동차 연령 분포 히스토그램(큰 미리보기)

이번에는 히스토그램이 직관적이지 않게 보입니다. 단순한 종 모양 대신 여기에 4개의 종 모양이 있습니다. 기본적으로 분포에는 3개의 로컬 최대값과 1개의 글로벌 최대값이 있는데, 이는 예상치 못한 일입니다. 자동차 연령의 이 이상한 분포가 다른 자동차 제조업체 및 모델에도 적용되는지 확인하는 것은 흥미로울 것입니다. 이 기사의 목적을 위해 우리는 BMW 3 시리즈 데이터 세트를 유지하지만 궁금한 경우 데이터를 더 깊이 파고들 수 있습니다. 자동차 연령 분포와 관련하여 우리는 자동차의 90% 이상이 10년 미만이고 80% 이상이 7년 미만임을 알 수 있습니다. 또한 대부분의 자동차가 5년 ​​미만인 것을 알 수 있습니다.

마일리지 분배

이제 마일리지에 대해 무엇을 말할 수 있습니까? 물론 가격 대비 동일한 종 모양을 기대합니다. 다음은 R 코드와 히스토그램입니다.

 hist(cars$Mileage) 
자동차 마일리지 분포 히스토그램
자동차 마일리지 분포 히스토그램(큰 미리보기)

여기에 왼쪽으로 기울어진 종 모양이 있습니다. 즉, 주행 거리가 적은 자동차가 시장에 더 많이 나와 있습니다. 우리는 또한 대부분의 자동차가 60,000마일 미만이고 최대 20,000~40,000마일 정도임을 알 수 있습니다.

연령-가격 상관관계

상관관계와 관련하여 자동차 연령-가격 상관관계를 자세히 살펴보겠습니다. 우리는 가격이 연령과 음의 상관관계를 가질 것으로 예상할 수 있습니다. 자동차의 연령이 증가할수록 가격은 낮아질 것입니다. R plot 함수를 사용하여 다음과 같이 가격-연령 상관 관계를 표시합니다.

 plot(cars$Age, cars$Price)

그리고 줄거리는 다음과 같습니다.

자동차 연령-가격 상관 산점도
자동차 연령-가격 상관관계 산점도(큰 미리보기)

우리는 자동차의 가격이 나이가 들면서 어떻게 떨어지는지 알아차립니다. 값비싼 새 자동차와 더 저렴한 오래된 자동차가 있습니다. 우리는 또한 특정 연령에 대한 가격 변동 간격을 볼 수 있습니다. 이는 자동차의 연령에 따라 감소하는 변동입니다. 이러한 변화는 주로 주행 거리, 구성 및 자동차의 전체 상태에 의해 결정됩니다. 예를 들어, 4년된 자동차의 경우 가격이 $10,000에서 $40,000 USD 사이입니다.

마일리지-나이 상관관계

마일리지-나이 상관관계를 고려할 때 마일리지는 연령에 따라 증가할 것으로 예상되며 이는 양의 상관관계를 의미합니다. 코드는 다음과 같습니다.

 plot(cars$Mileage, cars$Age)

줄거리는 다음과 같습니다.

자동차 주행 거리-연령 상관 산점도
자동차 주행 거리-연령 상관 산점도(큰 미리 보기)

보시다시피 자동차의 가격과 연식은 음의 상관관계가 있는 것과 달리 자동차의 연식과 주행거리는 양의 상관관계가 있습니다. 또한 특정 연령에 대한 예상 마일리지 변동이 있습니다. 즉, 같은 연령대의 자동차는 마일리지가 다릅니다. 예를 들어, 대부분의 4년된 자동차의 주행거리는 10,000~80,000마일입니다. 그러나 마일리지가 더 큰 이상값도 있습니다.

마일리지-가격 상관관계

예상대로 자동차의 주행거리와 가격 사이에는 음의 상관관계가 있을 것이고, 주행거리를 ​​늘리면 가격이 낮아진다는 의미다.

 plot(cars$Mileage, cars$Price)

줄거리는 다음과 같습니다.

자동차 주행 거리-가격 상관 산점도
자동차 마일리지-가격 상관관계 산점도(큰 미리보기)

예상대로 음의 상관관계. 또한 $3,000에서 $50,000 USD 사이의 총 가격 간격과 0에서 150,000 사이의 마일리지를 확인할 수 있습니다. 분포 형태를 자세히 보면 주행거리가 많은 차량보다 주행거리가 적은 차량의 가격이 훨씬 빠르게 하락하는 것을 알 수 있습니다. 주행 거리가 거의 0에 가까운 자동차가 있으며 가격이 급격히 떨어집니다. 또한 주행 거리가 200,000마일 이상인 경우(마일리지가 매우 높기 때문에) 가격이 일정하게 유지됩니다.

숫자에서 데이터 시각화로

이 기사에서는 데이터 분포를 위한 히스토그램과 데이터 상관 관계를 위한 산점도라는 두 가지 유형의 시각화를 사용했습니다. 히스토그램은 데이터 변수(실제 숫자 )의 값을 가져와 범위 전체에 분포하는 방법을 보여주는 시각적 표현입니다. R hist() 함수를 사용하여 히스토그램을 플로팅했습니다.

반면에 산점도는 숫자 쌍을 가져와 두 축에 나타냅니다. 산점도는 plot() 함수를 사용하고 조사하려는 상관 관계의 첫 번째 및 두 번째 데이터 변수라는 두 가지 매개변수를 제공합니다. 따라서 두 개의 R 함수인 hist()plot() 은 의미 있는 시각적 표현으로 숫자 집합을 변환하는 데 도움이 됩니다.

결론

데이터 가져오기, 처리 및 플로팅의 전체 데이터 흐름을 통해 손이 더러워지면 상황이 훨씬 더 명확해집니다. 마주하게 될 반짝이는 새 데이터 세트에 동일한 데이터 흐름을 적용할 수 있습니다. 예를 들어 사용자 연구에서 작업 또는 오류 분포에 대한 시간을 그래프로 표시할 수 있으며 작업 시간 대 오류 상관 관계를 표시할 수도 있습니다.

R 언어에 대해 자세히 알아보려면 Quick-R을 시작하는 것이 좋지만 R Blogger를 고려할 수도 있습니다. dplyr 과 같은 R 패키지에 대한 문서를 보려면 RDocumentation을 방문하세요. 데이터를 가지고 노는 것은 재미있을 수 있지만 데이터 중심 세계의 모든 UX 디자이너에게도 매우 유용합니다. 더 많은 데이터가 수집되고 비즈니스 결정을 알리는 데 사용됨에 따라 디자이너가 데이터의 특성을 이해하는 것이 필수적인 데이터 시각화 또는 데이터 제품에 대해 작업할 기회가 증가하고 있습니다.