통계 워크 벤치로서의 Excel


52

많은 사람들 (나를 포함하여)은 Excel에서 탐색 적 데이터 분석을 좋아하는 것 같습니다. 스프레드 시트에서 허용되는 행 수와 같은 일부 제한 사항은 고통 스럽지만 대부분의 경우 Excel을 사용하여 데이터를 처리하는 것이 불가능하지는 않습니다.

그러나 McCullough와 Heiser의 논문은 실제로 Excel을 사용하려고하면 결과가 잘못 될 수도 있고, 아마도 지옥에서도 불 타올 것이라고 비명을 지 릅니다 .

이 용지가 정확합니까, 아니면 편향되어 있습니까? 저자는 Microsoft를 싫어하는 것처럼 들립니다.


5
통계 계산을위한 스프레드 시트 소프트웨어의 정확도에 대한 최근 분석은 [Kellie B. Keeling and Robert J. Pavur (2011) : Spreadsheet Software의 통계 정확도, 미국 통계 학자, 65 : 4, 265-273] (현재 무료 다운로드)에 나와 있습니다. amstat.tandfonline.com/doi/pdf/10.1198/tas.2011.09076 에서 확인할 수 있습니다. 결과는 혼합되어 있고 약간 놀랍습니다. 주목할만한 점은 Excel 2007과 Excel 2010 ( RSAS 보다 더 정확한 것으로 보이는) 사이의 분포 계산이 크게 개선 된 것 입니다.
whuber

답변:


45

올바른 작업에 적합한 도구를 사용하고 익숙한 도구의 장점을 활용하십시오.

Excel의 경우 몇 가지 중요한 문제가 있습니다.

  • 데이터가 하나에 맞더라도 스프레드 시트를 사용하여 데이터를 관리하지 마십시오. 당신은 단지 문제, 끔찍한 문제를 요구하고 있습니다. 인쇄상의 오류, 데이터의 도매 혼합, 데이터 값 잘라 내기 등을 실질적으로 보호하지 않습니다.

  • 많은 통계 기능이 실제로 손상되었습니다. t 분포는 그중 하나입니다.

  • 기본 그래픽은 끔찍합니다.

  • 기본 통계 그래픽, 특히 상자 그림 및 히스토그램이 누락되었습니다.

  • 난수 생성기는 농담입니다 (그러나 그럼에도 불구하고 여전히 교육 목적으로 효과적입니다).

  • 높은 수준의 기능과 대부분의 애드 인은 피하십시오. 그들은 c ** p입니다. 그러나 이것은 안전한 컴퓨팅의 일반적인 원리 일뿐입니다. 함수가 무엇을하고 있는지 확실하지 않으면 사용하지 마십시오. 저수준 함수 (산술 함수, 순위, exp, ln, trig 함수 및 정규 분포 함수를 포함)를 고수하십시오. 그래픽을 생성하는 추가 기능을 사용 하지 마십시오 . 끔찍할 것입니다. (NB : 처음부터 자신의 확률도를 작성하는 것은 매우 쉽습니다. 정확하고 고도로 사용자 정의 할 수 있습니다.)

그러나 유리한 점은 다음과 같습니다.

  • 기본 수치 계산은 배정도 부동 소수점 수만큼 정확합니다. 그것들은 로그 감마와 같은 유용한 것들을 포함합니다.

  • 스프레드 시트의 입력 상자를 기준으로 컨트롤을 래핑하는 것은 매우 쉬워 동적 시뮬레이션을 쉽게 만들 수 있습니다.

  • 통계가 아닌 사람들과 계산을 공유해야하는 경우, 스프레드 시트는 어느 정도 저렴하든 상관없이 통계 소프트웨어를 사용하는 편이 좋습니다.

  • VBA에 매우 가까운 오래된 포트란 코드를 포팅하는 등 효과적인 수치 매크로를 쉽게 작성할 수 있습니다. 또한 VBA의 실행은 합리적으로 빠릅니다. (예를 들어, 처음부터 비 중심 t 분포를 정확하게 계산하는 코드와 세 가지 다른 고속 푸리에 변환 구현 코드가 있습니다.)

  • Crystal Ball 및 @Risk와 같은 효과적인 시뮬레이션 및 Monte-Carlo 애드온을 지원합니다. (그들은 자신의 RNG를 사용합니다. 나는 확인했습니다.)

  • (소규모의) 데이터와 직접 상호 작용하는 것의 비교는 타의 추종을 불허합니다. 통계 패키지, Mathematica 등보다 낫습니다. 스토리지가 많은 거대한 계산기로 사용될 때 스프레드 시트는 실제로 자체적으로 제공됩니다.

  • 강력하고 저항력있는 방법을 사용하는 좋은 EDA는 쉽지 않지만 한 번 완료 한 후에는 신속하게 다시 설정할 수 있습니다. Excel을 사용하면 n-way 테이블의 중간 연마를 포함하여 Tukey의 EDA 서적에서 모든 계산을 효과적으로 재현 할 수 있습니다 (약간 번거롭지 만).

원래 질문에 대한 직접적인 대답으로,이 논문에는 편견이 있습니다. Excel이 가장 약하고 유능한 통계학자가 사용하기 가장 적은 자료에 중점을 둡니다. 그러나 이와 같은 경고를 방송해야하기 때문에 논문에 대한 비판은 아닙니다.


7
@ whuber 장단점에 대한 훌륭하고 편리한 개요!
chl

4
좋고 균형 잡힌 +1. 특히 Excel의 (또는 실제로 스프레드 시트의) 가장 큰 판매 포인트라고 생각하는 "직접 상호 작용하는 즉시 성"에 대한 요점을 좋아합니다. 대중을위한 선언적 프로그래밍-일부 사람들은 왜 세계 비즈니스 로직의 80 %가 Excel로 작성되었다고 생각하는지 설명합니다 (R v SAS 또는 Java v C ++ 등에 대해 논쟁하는 프로그래머 및 통계 전문가를 지적).
ars

2
Microsoft는 몇 년 전에 Excel에서 깨진 함수를 수정하기 위해 수치 분석가를 고용했다고 들었습니다. 2007 또는 2010 버전에 Excel 문제가 여전히 있는지 알고 있습니까?
John D. Cook

2
@Zach 예를 들어 Excel 2002를 사용하는 =TINV(2*p,df)경우 p의 값을 .01에서 거의 0으로 변경하여 올바른 값과 비교합니다. (2에서 32 사이의 df로 확인했습니다.) 6 번째 유효 숫자에서 오류가 시작된 다음 p가 1.E-5 이하이면 폭발합니다. 이들 p의 값이 작더라도, 다중 비교 검정 및 비 분산 t와 같은 t 분포와 관련된 값을 계산하는 데 중요하기 때문에 테스트 할 현실적인 값이다.
whuber

2
첫 번째 글 머리 기호에는 별과 화살이 있어야한다고 생각합니다. 스프레드 시트는 감사 내역을 제공하지 않으므로 누군가가 실제로 의지하는 작업을 수행하려는 경우 중요합니다. R은 감사 추적을 직접 제공하지는 않지만 명령을 수락하고 가져 오기, 사전 처리, 프로세스, 그래프 등의 명령을 별도의 파일로 저장하여 수행 한 작업을 추적 할 수 있습니다. 그래프 # 1을 얻으면 갑자기 질문 할 이유가있는 경우를 대비하여 처음부터 다시 만들 수 있습니다.
Wayne

18

생물 정보학 설정에서 Excel을 사용하는 것에 대한 흥미로운 논문은 다음과 같습니다.

실수 식별자 : 생물 정보학, BMC Bioinformatics, 2004 ( 링크 ) 에서 Excel을 사용할 때 유전자 이름 오류가 실수로 발생할 수 있습니다 .

이 짧은 논문은 Excel에서 자동 유형 변환 (특히 날짜 및 부동 소수점 변환) 의 문제점을 설명합니다 . 예를 들어, 유전자 이름 Sept2는 2-Sept로 변환됩니다. 실제로 온라인 데이터베이스 에서이 오류를 찾을 수 있습니다 .

Excel을 사용하여 중간에서 많은 양의 데이터를 관리하는 것은 위험합니다. 실수는 사용자가 알지 않고도 쉽게 발생할 수 있습니다.


6
이것은 나를 가장 화나게 만드는 Excel의 측면과는 거리가 멀다. 데이터 스토리지에는 포맷이 아닌 명시적인 데이터 유형이 필요합니다.
매트 파커

3
실제로, 이것은 일반적으로 MS 소프트웨어에 관한 것입니다.
Carlos Accioly

@csgillespie (+1)이 관점에서 Excel에 대해 들었습니다.
chl

6
Excel에서 다른 형식으로 내보내는 동안 필드를 자동으로 자르는 데 자주 사용하는 오류가 발생했습니다. 토양의 살충제 농도 파일에서 초기 자릿수를 잘라내어 1,000,050 (특별히 유독 한) 값을 50 (거의 중요하지 않은 값)으로 변환했습니다!
whuber

@Matt는 Excel에서 데이터를 "저장"하는 경우에만 분노를 유발합니다. 보고 및 차트 작성을 위해 Excel을 순전히 프런트 엔드로 사용할 때 유용한 기능입니다.
익명 유형

11

글이 정확하거나 편향되어 있는지에 대한 질문은 쉬워야합니다. 일부 분석을 복제하고 동일한 답을 얻었는지 확인할 수 있습니다.

McCullough는 현재 몇 년 동안 서로 다른 버전의 MS Excel을 사용하고 있으며, MS는 이전 버전에서 몇 년 전에 지적한 오류를 수정하는 데 적합하지 않은 것으로 보입니다.

Excel에서 데이터를 가지고 노는 데 문제가 없습니다. 그러나 솔직히 말하면 Excel에서 "심각한"분석을 수행하지는 않습니다. 내 주요 문제는 부정확하지는 않지만 (매우 드물게 문제가 될 것 같지는 않지만) 1 년 후 검토 자 또는 상사가 X를하지 않은 이유를 물으면 분석을 추적하고 복제 할 수 없습니다. 주석 처리 된 R 코드로 직장과 장님 골목을 나눕니다.하지만 Excel에서는 의미가 없습니다.


2
(+1) 데이터 편집 및 분석 기록 ( j.mp/dAyGGY ) 을 유지해야 할 필요성에 대해 Medstats에 대한 토론을 멋지게 반향하고 있습니다 ! 고마워.
chl

"직장 및 블라인드 골목"을 저장하는 것은 R보다 Excel을 사용하는 것이 어렵지 않습니다. 실제로 수행하는 문제입니다. Excel의 주요 문제는 강도와 관련이 있습니다. 실수로 무언가를 변경하는 것은 너무 쉽습니다. 그러나 OP의 초점 인 EDA의 경우 우리가하는 모든 일을 저장하지는 않습니다. 결국, EDA는 대화식
whuber

1
VB에서 수행하는 경우 재현 가능한 메소드 레코드를 유지할 수 있지만 Excel의 GUI 초점은 그러한 동작을 권장하지 않습니다.
James

7

또한 Google 스프레드 시트 사용에 관한 질문에 대해서는 대조적 인 의견이 제기되었으므로 일부 사용자는 Google 문서 스프레드 시트를 사용하여 통계 작업을 수행하고 다른 사람들과 공유합니까?

나는 마음이 너무 비관 보이지 않았다 이전 논문에서이 있지만 소폭 당신이 언급 한 논문에서 인용 : 킬링 및 Pavur, 구 개 통계 소프트웨어 패키지의 신뢰성 비교 연구 (51 2007 CSDA : 3811). 하지만 지금은 내 하드 드라이브에서 당신을 찾았습니다. 2008 년에도 특별한 문제가있었습니다 . Microsoft Excel 2007의 특별 섹션 및보다 최근에는 Journal of Statistical Software : Numerical 정확성 on Spreadsheets를 참조하십시오 .

나는 이것이 오랜 논쟁이라고 생각하며 통계 계산을위한 Excel 안정성에 대한 다양한 논문 / 의견을 찾을 수 있습니다. 나는 다른 수준의 토론이 있다고 생각합니다 (어떤 종류의 분석을 계획하고, 내부 솔버에 의존합니까, 주어진 모델에 들어가는 비선형 용어 등이 있습니까?) 숫자 부정확성의 원인이 발생할 수 있습니다 적절한 컴퓨팅 오류 또는 디자인 선택 문제 의 결과로 ; 이것은에 요약되어 있습니다

M. Altman, J. Gill & MP McDonald, 사회 과학자 통계 계산의 수치 문제 , Wiley, 2004.

탐색 적 데이터 분석을 위해 향상된 시각화 기능, 다변량 및 동적 그래픽 (예 : GGobi) 을 제공하는 다양한 대안이 있지만이 위키의 관련 스레드를 참조하십시오.

그러나 첫 번째 요점은 또 다른 문제 (IMO), 즉 큰 데이터 세트를 처리하기 위해 스프레드 시트를 사용하는 문제를 해결하는 것입니다. 큰 csv 파일을 Excel로 가져올 수는 없습니다. 그러나 다른 종류의 고차원 데이터에 적용됩니다). 그런 목적으로 만들어지지 않았습니다.


나는 "다른 수준의 토론"에 대한 뉘앙스를 좋아합니다.
whuber

7

논문과 다른 참가자들은 기술적 약점을 지적합니다. Whuber는 최소한 그 강점 중 일부를 개략적으로 설명합니다. 나는 개인적으로 Excel (가설 테스트, 선형 및 다중 회귀)에서 광범위한 통계 작업을 수행하고 좋아합니다. 256 열과 65,000 행의 용량으로 Excel 2003을 사용하여 사용하는 데이터 세트의 약 100 %를 처리 할 수 ​​있습니다. Excel 2007이이 용량을 엄청난 양 (수백만 행)으로 확장 한 것으로 알고 있습니다.

Whuber가 언급했듯이 Excel은 또한 매우 강력하고 사용하기 쉬운 수많은 뛰어난 애드 인 소프트웨어의 시작 플랫폼 역할을합니다. Monte Carlo Simulation에서 Crystal Ball과 @Risk를 생각하고 있습니다. 강력한 통계 및 데이터 분석을위한 XLStat; 최적화에 가장 적합한 것은 무엇입니까? 그리고 목록은 계속됩니다. Excel은 아이팟이나 아이 패드와 상당히 비슷한 앱으로 구성되어 있습니다. Excel 앱이 싸지 않다는 것을 알았습니다. 그러나 그들이 할 수있는 일은 일반적으로 꽤 큰 거래입니다.

모델 문서에 관한 한, 방법론, 출처 등에 관한 책을 문자 그대로 쓸 수있는 텍스트 상자를 삽입하는 것이 매우 쉽습니다. 또한 모든 셀에 주석을 삽입 할 수도 있습니다. 따라서 Excel이 내장 문서를 용이하게하는 데 정말 좋은 경우입니다.


1
추가 사항과 의견을 보내 주셔서 감사합니다.
whuber

좋은 점, 올바른 방법으로 사용하고 유익한 사람의 의견을 듣는 것이 좋습니다.
익명 유형

6

Excel은 통계에는 좋지 않지만 탐색 적 데이터 분석에는 훌륭 할 수 있습니다. 특히 흥미로운 기술에 대해서는 이 비디오살펴보십시오 . 조건부로 데이터를 채색하고 셀 내 막대 차트를 추가하는 Excel의 기능은 원시 데이터의 구조에 대한 통찰력을 제공 할 수 있습니다.


6

Excel을 사용하고 싶지 않은 또 다른 좋은 참고 자료는 다음과 같습니다.

스프레드 시트 중독

실제로 Excel을 사용해야하는 상황에 처한 경우 (일부 Accademic Departments 주장) Rexcel 플러그인 사용을 제안합니다 . 이를 통해 Excel을 사용하여 인터페이스 할 수 있지만 R 프로그램을 계산 엔진으로 사용합니다. R을 사용하기 위해 알 필요는 없으며 드롭 다운 메뉴와 대화 상자를 사용할 수 있지만 사용하면 더 많은 것을 할 수 있습니다. R은 계산을 수행하기 때문에 Excel보다 훨씬 신뢰할 수 있으며 훨씬 우수한 그래프와 상자 그림 및 Excel에서 누락 된 다른 그래프가 있습니다. 심지어 Excel에서 자동 셀 업데이트와 함께 작동합니다 (매번 재 계산 해야하는 복잡한 분석이 많은 경우 속도가 느려질 수 있음). 스프레드 시트 중독 페이지의 모든 문제를 해결하지는 않지만 스트레이트 엑셀을 사용하는 것보다 크게 개선되었습니다.


1

Excel은 올바른 플러그인을 사용하여 탐색 적 데이터 분석 및 선형 회귀 분석에 모두 유용합니다. 상용 제품에는 여러 가지가 있지만 대부분은 생산 품질의 측면에서 원하는 것을 남겨 둡니다 (Excel의 차트 옵션 또는 다른 Office 응용 프로그램과의 연결 기능을 최대한 활용하지는 않음). 일반적으로 데이터 시각화 및 프리젠 테이션에 적합하지는 않습니다. 그들은 또한 당신이 당신의 작업에 대해 잘 문서화 된 감사 추적을 유지하는 훈련 된 모델링 접근법을 지원하지 않는 경향이 있습니다. 다음은 이러한 많은 문제를 해결하는 무료 플러그인 "RegressIt"입니다. http://regressit.com. 탐색 적 분석 (최대 50 개의 변수가있는 병렬 시계열 도표 및 산점도 행렬 생성 기능 포함)을 매우 잘 지원하며 지연, 로깅 및 차이 (종종 적용되지 않는)와 같은 데이터 변환을 쉽게 적용 할 수 있습니다. 순진한 회귀 사용자에 의해 적절하게), 데이터 분석의 모범 사례를 지원하는 매우 상세한 테이블 및 차트 출력을 제공하며 모델 간 비교를 용이하게하고 모델을 기록하는 감사 추적 워크 시트를 유지합니다. 어떤 순서로 장착되었습니다. 다변량 데이터를 처리하고 있고 최소한 일부 작업이 Excel 환경에서 수행되는 경우 사용중인 다른 항목을 보완합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.