사람들이 데이터를 더 잘 관리하도록하려면 어떻게해야합니까?


42

직장 에는 매우 다양한 분야의 직원이 있으므로 다양한 형태로 데이터를 생성합니다. 결과적으로 각 팀은 데이터 저장을위한 자체 시스템을 개발했습니다. 일부는 Access 또는 SQL 데이터베이스를 사용합니다. 일부 팀 (내 공포)은 거의 전적으로 Excel 스프레드 시트에 의존합니다. 종종 데이터 형식이 프로젝트마다 다릅니다. 어떤 경우에는 그것을 '시스템'이라고 부르는 것이 너무 친절합니다.

이것이 수반하는 문제는 모든 프로젝트의 데이터를 정리하기 위해 새로운 코드를 작성해야한다는 것입니다. 스프레드 시트를 수동으로 편집하는 사람들은 데이터의 재현성 및 감사를 거의 불가능하게합니다. 더 나쁜 것은 데이터가 손실되거나 잘못 될 가능성이 있다는 것입니다.

나는 회사의 이사회 구성원과 이러한 문제에 대해 토론 할 기회를 얻었으며, 그에게 무엇을 말해야하는지에 대해 작업해야합니다. 나는 이미 그에게 우리가 문제가 있고,이 권리를 얻는 것이 더 나은 과학과 돈을 절약 할 수 있다고 설득했다고 생각합니다. 문제는 무엇을 목표로 삼아야하며 어떻게 거기에 도착해야 하는가입니다.

더 구체적으로:

종이에서 창조에서 출판까지 데이터를 추적 할 수 있도록 데이터를 어떻게 저장해야합니까? (중앙 서버에 데이터베이스가 저장되어 있습니까?)

데이터베이스 형식을 표준화하는 방법은 무엇입니까?

사람들이 데이터를 관리하는 방법을 교육 할 수있는 좋은 자료가 있습니까? (일반적으로 직업 위생사 및 폭발물 엔지니어는 데이터 멍청이가 아니므로 비 기술적 인 콘텐츠가 선호됩니다.)


제목 질문은 게시물의 실질적인 질문과 다릅니다. 전자는 사람들이 데이터를 관리하도록 설득하는 방법에 대해 질문하고, 후자는 데이터를 저장할 최선의 방법에 대해 묻습니다. 어떤 질문에 대답 하시겠습니까?
Monica Monica 복원

답변:


16

소프트웨어 세계의 아이디어를 고려해 볼 가치가 있습니다. 특히 버전 제어 저장소 및 중앙 데이터베이스 서버 설정을 생각할 수 있습니다 .

버전 제어는 아마도 Excel 및 텍스트 파일과 같은 무료 플로팅 파일을 사용하는 데 도움이 될 수 있습니다. 그러나 여기에는 R, SAS 등과 같은 데이터와 관련된 파일도 포함될 수 있습니다. 아이디어는 변경 사항을 추적하는 시스템이 있다는 것입니다. 필요한 경우 과거의 시점으로 롤백 한 시점과 롤백 시점을 알 수 있습니다.

SQL 데이터베이스가 이미있는 경우 중앙 서버를 설정하고 유능한 DBA를 고용하는 것이 가장 좋습니다 . DBA는 데이터 무결성을 보장하고 관리하는 업무를 담당하는 사람입니다. 작업 설명의 일부에는 백업 및 조정과 같은 것들이 포함됩니다. 그러나 또 다른 부분은 데이터가 시스템에 들어가는 방법을 제어하고, 제약 조건이 충족되도록 보장하고, 데이터에 대한 피해를 방지하기위한 액세스 정책을 마련하고, 사용자 지정 또는 단순화 된 데이터 형식을 노출하도록보기를 설정하는 등의 다른 부분입니다. 데이터 프로세스에 대한 방법론을 구현합니다. 실제 DBA를 고용하지 않더라도 (좋은 데이터베이스는 채용하기가 매우 어렵지만) 중앙 서버를 사용하면 여전히 데이터 관련 방법론을 구성 할 수 있습니다.


3
버전 관리에 동의했습니다. 내가 사용할 게; 개발자와 통계학 자의 상당 부분이 그러합니다. (100 % 채택을 원하지만 지금은 또 다른 관망입니다.) 비전문가가 사용하도록하기가 쉽지 않습니다. 모든 아이디어에 감사드립니다.
Richie Cotton

2
@Richie Cotton : 이유를 모르겠지만, 비 기술자들에게는 버전 관리가 어려운 개념 인 것 같습니다. 사람들은 계속 파일을 일부 변경하고 이름을 바꾸고 이메일을 통해 보냅니다. "PaperDraftCorrectedByJohnRevision3RewroteByLeslie-NewVersion3.doc"파일을 싫어하는 방법
nico

12

1
훌륭한 링크. 필자가 전달해야 할 중요한 두 가지 메시지는 더 자동화 된 데이터 검사가 필요하고 데이터 입력과 데이터 프레젠테이션 분리에 대한 설명을 시작해야한다고 생각합니다.
Richie Cotton

6

먼저 스스로에게 물어봐야 할 것은 : 사람들이 왜 Excel을 사용하지 않은 작업을 수행하기 위해 Excel을 사용 하는가?

1) 사용 방법을 이미 알고 있습니다. 2) 작동합니다. 어색한 방식으로 작동 하지만 작동 하므로 원하는 것입니다.

일련의 숫자를 복사하고 버튼을 누르면 플롯이 있습니다. 그렇게 쉬운.

따라서 중앙 집중식 데이터 세트, 적절한 데이터베이스 (Access는 그러한 데이터베이스 중 하나가 아님) 등을 사용하여 얻을 수있는 이점을 이해하게하십시오. 그러나 위의 두 가지 사항을 기억하십시오. 작동하는 시스템을 설정해야하며 사용하기 쉽습니다.

엑셀이 아닌 펜과 종이로 돌아 가고자하는 시스템을 너무나 많이 잘못 본 적이 있습니다!

예를 들어, 내가 일하는 끔찍한 주문 시스템이 있습니다.

제품 이름, 수량, 비용 등을 입력 할 수있는 Excel 스프레드 시트 인 주문 양식을 작성해야했습니다. 모든 것을 추가하고 TVA 등을 추가하고 인쇄 한 다음 주문을 한 비서가 바로 그 일이었습니다. 비효율적이지만 효과가있었습니다.

이제 우리는 중앙 집중식 DB와 모든 것을 갖춘 온라인 주문 시스템을 가지고 있습니다. 공포입니다. 단일 키보드 단축키와 다양한 소프트웨어로 인해 지독한 양식을 작성하는 데 10 분이 걸리지 않습니다. 그리고 나는 정보에 정통한 사람이므로 컴퓨터를 좋아하지 않는 사람들에게는 어떻게 될지 상상해보십시오 ...


사용자 친화적이어야합니다. 사람들은 자신의 업무 관행에 대해 매우 보호를 받으므로, 변화가있을 경우 사람들의 삶이 더 쉬워 지거나 실패 할 것입니다.
Richie Cotton

5

나는 이미 주어진 모든 답변에 밑줄을 긋지 만 고양이를 고양이라고 부르 자. 많은 작업 공간에서 경영진이 "이국적인"softwaretools (이국적인 것)에 대한 투자가 필요하다는 것을 설득하는 것은 거의 불가능하다. 그것을 유지합니다. 필자는 소프트웨어와 데이터베이스에 대한 철저한 배경 지식을 가진 통계 전문가를 고용함으로써 큰 ​​혜택을 얻을 수 있다고 대부분의 고객들에게 말했지만 "할 수 없음"이 일반적인 대응입니다.

그런 일이 일어나지 않는 한 Excel로 할 수있는 몇 가지 간단한 작업이 있습니다. 그리고 첫 번째는 의심의 여지없이 버전 관리입니다. Excel 버전 관리에 대한 자세한 내용은 여기를 참조하십시오 .

Excel 사용에 관한 몇 가지 사항

EXCEL을 사용하는 사람들은 EXCEL의 수식 기능을 매우 좋아합니다. 그러나 이것은 EXCEL 시트 내에서 가장 중요한 오류 소스이며 EXCEL 파일을 읽으려고 할 때 발생하는 문제입니다. 수식이 포함 된 시트 작업을 거부합니다.

또한 함께 일하는 모든 사람들이 EXCEL 시트를 일반 형식으로 제공하도록 강요합니다.

  • 첫 번째 행은 다른 변수의 이름을 포함합니다
  • 스프레드 시트가 A1 셀에서 시작됩니다.
  • 모든 데이터는 중단없이 포맷없이 열에 저장됩니다.
  • 가능하면 데이터도 .csv 형식으로 저장됩니다. 데이터를 추출하고 다시 포맷하여 .csv 파일에 넣는 VBA 스크립트를 작성하는 것은 어렵지 않습니다. 또한 매일 데이터를 .csv 덤프 할 수 있으므로 버전을보다 효율적으로 제어 할 수 있습니다.

데이터가 항상 가지고있는 일반적인 구조가 있다면 기본 VB 매크로가있는 템플릿을 개발하여 데이터를 추가하고 분석 할 데이터 세트를 생성하는 것이 좋습니다. 이것은 일반적으로 모든 직원이 자신의 "천재"데이터 스토리지 시스템을 만들지 않도록하며이를 통해 코드를 작성할 수 있습니다.

즉, 모든 사람이 SQL (및 데이터 입력을위한 프런트 엔드)을 사용하도록 설득 할 수 있다면 R을 직접 연결할 수 있습니다. 성능이 크게 향상됩니다.

데이터 구조 및 관리

일반적으로 데이터베이스 (또는 주장하는 경우 EXCEL 시트)에 저장된 데이터는 절대 최소값이어야합니다. 즉, 다른 변수에서 계산할 수있는 모든 변수가 데이터베이스에 포함되어서는 안됩니다. 계산이 지루하고 시간이 오래 걸리는 경우 파생 변수 나 변환 된 변수를 저장하는 것이 유익 할 수 있습니다. 그러나 필요한 경우 원본 데이터베이스에 연결된 별도의 데이터베이스에 저장해야합니다.

한 경우 (따라서 한 행)로 간주되는 것에 대해서도 생각해야합니다. 예를 들어 사람들은 각 시점마다 새로운 변수를 만들어 시계열을 만드는 경향이 있습니다. 이것은 EXCEL에서 의미가 있지만, 이러한 데이터를 읽으려면 데이터 매트릭스를 약간 뒤집어 야합니다. 그룹 비교와 동일 : 각 그룹에 대한 응답 변수가 아닌 하나의 그룹 표시기와 하나의 응답 변수가 있어야합니다. 이러한 방식으로 데이터 구조도 표준화 할 수 있습니다.

내가 자주 겪는 마지막 것은 다른 메트릭스를 사용하는 것입니다. 길이는 미터 또는 센티미터, 섭씨, 켈빈 또는 화씨 온도로 표시됩니다. ... 변수를 측정하는 단위가 프런트 엔드 또는 템플릿에 표시되어야합니다.

그리고 이러한 모든 일이 있더라도 실제로 분석을 시작하기 전에 데이터 제어 단계를 원합니다. 다시 말하지만, 이것은 새 항목에서 매일 (예 : 밤새) 실행되고 문제를 즉시 (범위를 벗어난 유형, 잘못된 유형, 누락 된 필드 등) 플래그로 지정하여 가능한 한 빨리 수정할 수있는 스크립트 일 수 있습니다. 2 개월 전에 작성된 항목으로 돌아가서 무엇이 잘못되었는지와 이유를 찾으려면 올바른 "Sherlock-skills"를 사용하여 수정하십시오.

내 2 센트


여기에 매우 흥미로운 점이 있습니다. 사람들이 스프레드 시트를 단순화하고 표준화하도록 설득하는 것은 스프레드 시트를 포기하는 것보다 성공할 가능성이 높습니다. 또한 버전 제어가 Excel과 통합 될 수 있다는 것을 몰랐습니다. 알고 반갑습니다.
Richie Cotton

2
중복 변수를 저장하지 말라고 충고에 관해서 : 이것은 RDBMS에 적합하지만 스프레드 시트에 반대를 권장해야합니다. 후자는 오류가 발생하기 쉬우므로 오류를 감지하고 수정하는 메커니즘이 매우 중요합니다. 최선의 방법 중 하나는 계산 필드 및 통계 요약과 같은 중복 정보로 구성됩니다. 예를 들어 열 C가 열 A와 B의 비율 인 경우 주어진 행의 단일 열에있는 오류를 감지하여 일반적으로 수정할 수 있습니다.
whuber

1
@whuber : 이것이 우리가 데이터 제어 단계에서 확인하는 것입니다. 추가 열을 사용하여 빠르게 확인할 수 있지만 최종 시트에 보관해서는 안됩니다. 스프레드 시트의 수식은 공포스럽고 스프레드 시트가 클수록 데이터를 가져 오기가 더 어려워집니다. 또한 Excel의 경우 어쨌든 .xls와 .xlsx의 차이점과 싸울 것입니다. Excel 파일에 크게 의존하는 경우 관리자가 Microsoft Office를 업데이트하기로 결정하면 많은 코드가 손상 될 수 있습니다. 따라서 : csv로 저장하고이 csv 파일을 가능한 작게 유지하십시오.
Joris Meys

지난 24 년 동안 스프레드 시트로 전송 된 데이터에 대처하고 실질적인 데이터베이스를 관리하는 데 상당한 시간을 투자 한 후, 나는 동의하지 않아야합니다. 스프레드 시트 (.xls, .xlsx, .wks, .wb * 등) 또는 csv 파일에 대한 "제어"와 같은 것은 없습니다. 인쇄 된 형식으로 만 사용 가능한 경우에도 이러한 파일에 중복 정보가 존재하면 상당히 큰 데이터베이스 (100k + 레코드)가 여러 번 부활했습니다. 이런 일이 생길 때마다 저 (그리고 내 고객)는 중복에 감사했습니다.
whuber

@whuber : 우리는 불가능한 값 / 이상치 / 홀수 사례를 찾기 위해 추가 스크립트로 데이터 제어를 수행합니다. 그것이 데이터 제어 단계에서 의미하는 바입니다. 이것은 SGS와 같은 회사 및 임상 시험 등을 분석하는 다른 회사에서 업계 표준 btw입니다. 필요한 중복 정보는 별도의 데이터베이스에 보관됩니다. 그들 중 하나가 실패하면, 다른 하나는 부활에 필요합니다. 괜찮은 백업 시스템이없는 경우, 즉 ...
Joris Meys

3

VisTrails : Python 기반 과학 워크 플로우 및 프로비던스 시스템 . PyCon 2010에서 진행된이 연설에는 좋은 아이디어가 있습니다. VisTrails 또는 python 사용에 관심이없는 경우에도들을 가치가 있습니다. 결국 데이터를 재생산 할 수있는 명확한 문서 방법이 필요하다고 생각합니다. 그리고 가능한 검증이 필요합니다.

인용 :

"이 대화에서, 우리는 데이터 제품과 사용 된 프로세스의 출처 (즉, 계보)를 투명하게 포착하는 파이썬 기반 오픈 소스 과학 워크 플로우 인 VisTrails ( http://www.vistrails.org )에 대한 개요를 제공 할 것입니다. VisTrails를 사용하여 데이터 탐색 및 시각화를 간소화하는 방법을 보여 주며 실제 예제를 사용하여 여러 도구와 같은 여러 도구와 Iibraries를 결합한 정보 처리 파이프 라인을 시각적으로 생성하는 기능을 포함하여 시스템의 주요 기능을 시연합니다. VTK, pylab 및 matplotlib 또한 VisTrails가 결과 정보를 지원할뿐만 아니라 파이프 라인 생성 및 개선을 단순화하기 위해 출처 정보를 활용하는 방법을 보여줄 것입니다. "


파이썬은 우리 조직에서 널리 퍼져 있지 않지만 흥미로운 프로젝트처럼 보입니다. 문서에서 어떻게해야하는지에 대한 아이디어를 찾을 수 있는지 살펴 보겠습니다.
Richie Cotton

2

방금 ICPSR이 호스팅하는이 웹 페이지를 데이터 관리 계획 에 대해 알게되었습니다 . ICPSR의 목표는 귀하의 비즈니스와 다소 다를 것이라고 생각하지만 (예 : 기밀을 위반하지 않고 데이터를 쉽게 전파 할 수 있도록 만드는 데 크게 관심이 있음) 비즈니스에 유용한 정보가 있다고 생각합니다. 특히 메타 데이터 생성에 대한 조언은 보편적 인 것 같습니다.


2

훨씬 작은 규모의 경우, 다른 연구원 / 공동 작업자와 데이터 파일 (및 스크립트 및 결과)의 사본을 공유 / 동기화하기 위해 dropbox를 사용했습니다 ( 여기에 작성했습니다 ).

내가 사용한 다른 도구는 데이터를 수집하고 공유하기위한 Google 문서입니다 (내가 쓴 내용 )


0

Dropbox + packrat 는 백업 / 버전 관리와 파일을 공유하기에 좋습니다.

그런 다음 해당 파일 (자동 표준화 / 마사지 후)을 데이터베이스에로드하고 정리 된 데이터를 분석합니다. 버전 제어 (또는 packrat 옵션이있는 별도의 dropbox 폴더 ...)에서 추출-변환-로드주기를 자동화하는 스크립트를 넣으십시오.

데이터베이스 서버가 결국 충돌을 일으키거나 샤딩 또는 기타 작업이 필요한 경우 데이터를 사람 친화적 (Excel, 웹 양식 등)에서 분석 친화적 (일반적으로 정규화 및 제한, 항상 정리)으로 이동하는 파이프 라인이 있습니다.

"ETL"단계는 데이터웨어 하우징에서 비롯됩니다. 온라인 트랜잭션 처리 시스템을 구축하지 않는 경우 데이터웨어 하우스를 구축 한 것일 수 있습니다. 그러니 그것을 받아들이고 사람들이 지난 30 년간 건물을 통해 배운 것을 활용하십시오.

즐기세요

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