데이터 분석75 파이썬 배열의 모든 것: 리스트, 튜플과의 차이점 완벽 비교 여러분, 파이썬 배열에 대해 얼마나 알고 계신가요? 오늘은 파이썬 배열의 기본 개념부터 고급 기능까지, 리스트와 튜플과의 차이점을 완벽히 비교해 보겠습니다. 이 글을 통해 파이썬 배열을 활용하여 데이터 처리의 효율성을 높이는 방법을 배워보도록 하겠습니다. 특히, 배열을 사용하여 대량의 데이터를 효율적으로 관리하고, 실시간 데이터 처리에 어떻게 활용할 수 있는지에 대해 알아보겠습니다. 『 '데이널'의 컨텐츠에 포함된 정보는? 』 파이썬 배열의 기본 개념파이썬에서 배열은 동일한 데이터 타입의 여러 항목을 저장할 수 있는 데이터 구조입니다. 배열은 연속된 메모리 위치에 저장되며, 각 항목은 인덱스를 통해 접근할 수 있습니다. 파이썬은 기본적으로 배열을 지원하지 않지만, `array` 모듈을 사용하여 .. 2024. 12. 16. 파이썬으로 분석한 알고리즘 시스템 적용 가이드 『 '데이널'의 컨텐츠에 포함된 정보는? 』여러분은 분석 프로젝트 결과물이 어떤 형태인지 아시나요? 데이터 분석을 하면 알고리즘을 시각화하거나, 모델 평가 결과를 보고서로 제출하고 끝나는 프로젝트도 있습니다. 이 방식은 인사이트만 제공하고, 실제 구축은 다른 팀이나 조직해서 진행하는 경우입니다. 이 글에서는 Python으로 알고리즘을 개발하고, 모델을 만들고, 그 모델을 주기적으로 실행하게 시스템에 적용하는 것까지 알아보도록 하겠습니다. 분석 알고리즘 개발여러분은 아마 주피터노트북으로 개발하시는 것이 편할텐데요. 거기에는 eda한 내용까지 포함돼 있어서, 데이터분석 후에는 실행 파일을 만들어줘야 합니다. 가장 먼저 할 일은 필요한 라이브러리를 가져올 거예요. 예를 들어, 자주 쓰이는 NumPy나 Pa.. 2024. 10. 17. 데이터 스케일링(Scaling), 왜 해야 할까요? 머신러닝 모델 성능의 비밀 이전 글에서 '머신러닝에서 input 데이터로 숫자 형태를 넣어야 한다'는 "변수 속성 통일"에 대해 다뤘습니다. 속성을 숫자 형태(type)으로 통일해야 한다는 개념이었죠. 이번에는 알고리즘이 예측에 편향이 생기지 않기 위해 스케일링을 해야 합니다. 이 작업은 입력되는 숫자값의 범위 및 분포를 다른 변수들과 일치시켜주는 작업입니다. 스케일링을 하는 이유그렇다면 왜 스케일링을 하는 걸까요? 이유는 입력되는 변수에 대해 기계는 어떤 의미인지를 알 수 없다는 것입니다. 예를 들어, 100이라는 값이 들어왔다면 100점 만점의 100이면 높은 것이고, 500점 만점의 100이면 낮인 것인지 우리는 알지만 기계는 모릅니다. 그래서 서로 크기의 편차가 크게되면 상대적으로 큰 변수의 영향을 더 받아 잘못된 예.. 2024. 10. 10. 데이터 전처리 첫걸음, 변수 속성 불일치 해결법 『 '데이널'의 컨텐츠에 포함된 정보는? 』 변수 속성을 통일해야 하는 이유를 아시나요? 데이터 전처리에서 변수 명명규칙과 정제를 끝냈다면 다음은 변수 속성을 통일해야 합니다. 이유는 사람이 아니라 머신(기계)이 계산을 해야 하기 때문이죠. 그래서 '머신 러닝'이라 합니다. 머신 러닝은 입력값 x가 주어졌을 때, 출력값 y를 내보냅니다. 즉, Input이 들어가 알고리즘에 의해 output이 출력되는 형태입니다. 여기서 중요한 점은 머신 러닝 알고리즘은 숫자만 인지하기 때문에 변수 속성을 기계가 인지할 수 있는 형태로 통일해 주어야 합니다.(아래 그림 참조) 이 개념은 머신 러닝을 프로그램을 만들어 본 사람은 당연하다고 말할 수도 있는데요. 교육을 하다 보면 처음 데이터 분석을 배우는 교육생 중 가장.. 2024. 10. 7. 데이터 분석 실패 원인 1위? 바로 변수 명명과 정제 실수! 『 '데이널'의 컨텐츠에 포함된 정보는? 』데이터가 수집만큼 변수 명명과 정제도 중요하다. 데이터 전처리에서 변수 확인이 끝나면 다음은 변수 명명과 정제가 필요합니다. 이 과정을 통해 컬럼명을 이쁘게 정리하고 그 안에 데이터도 클린징하는 작업을 수행하죠. 변수 명명과 정제의 필요성데이터셋을 우리는 Python이나 R에서 작업 해야 합니다. 데이터를 올리기 위해 가장 먼저 변수명을 정의해야 하죠. 컬럼명을 어떻게 사용할지 목적에 따라 명명하는 것이 좋습니다. 이 작업은 개발의 일관성을 위해 꼭 필요한 단계입니다. 또 변수를 제대로 활용하기 위해서는 컬럼명을 한글로 명명하기보다는 영문으로 해야 관리하기 더 좋습니다. 그 다음은 데이터 안에 특수문자와 같은 잘못된 데이터를 제거하는 일을 합니다. 이 두 .. 2024. 10. 4. Boosting 알고리즘 - XGBoost 특징 및 장단점 『 '데이널'의 컨텐츠에 포함된 정보는? 』 XGBoost는 앙상블 부스팅 알고리즘 시리즈 중에 강력하다고 손꼽는 기법입니다. Light GBM(LGBM)이 나오기 전에는 XGBoost 만큼 성능 좋은 알고리즘이 찾기 힘들 정도였죠. XGBoost의 특징을 알게되면 이전에 봤던 GBM과 어떻게 다른지를 명확하게 개념이 생길것입니다. 추가로 XGBoost의 동작 원리를 이해하고, 그 장단점까지 따져보로록 하겠습니다. XGBoost 란?XGBoost는 eXtreme Gradient Boosting의 약자입니다. 논문 XGBoost : A scalable Tree Boosting System에서 발표된 알고리즘으로 GBM(Gradient Boosting)과 다르게 병렬 학습이 지원되도록 구현한 라이브러.. 2024. 8. 30. Data Imputation(데이터 대치, 결측치 처리) 및 흔한 실수들 누락된 데이터는 실제 데이터에서 흔히 발생하는 문제입니다. 장비 오작동, 인적 오류 또는 단순히 특정 데이터 포인트가 수집되지 않은 등 다양한 이유를 경험하게 됩니다. 이런 데이터 누락을 결측이라고 표현하는데요. 결측 데이터가 너무 많이 발생하면 어떻게 해야 할까요? 데이터 전처리의 결측 처리 부분에서 80% 이상 누락된 데이터는 버릴 수도 있다고 이야기했습니다. 그렇지만 수집된 소중한 데이터를 버리는 쪽으로 결정하기는 어렵습니다. 이때 사용하는 방법이 데이터 대치(Data Imputation)입니다. 데이터 분석 및 통계에서 데이터 세트 내의 누락된 값을 채우는 데 사용되는 기술이죠. 데이터 대치에는 여러 가지 방법이 있는데요. 방법 선택은 데이터의 성격과 수행되는 특정 분석에 따라 달라집니다. .. 2024. 4. 30. 가설 검정 왜 필요할까? t-test, ANOVA, 카이제곱 검정 분석하다 보면 무엇인가 의미 있는 발견인지를 확인할 때 't-test 한번 해봐'라는 말을 많이 합니다. 이는 가설 검정을 진행해 보라는 의견이고 가설 검정은 통계 분석의 기본입니다. 데이터 사이언티스트들은 데이터에서 결론을 도출하는 방법을 이해하기 위해 가설 테스트의 개념을 이용합니다. 가설 검정의 필요성우리에게 주어진 데이터를 가지고 무엇을 할 수 있을까요? 우선 탐색적 분석(EDA)이라는 작업을 통해 데이터의 일반적인 통계와 형태를 이해합니다. 그다음에 가설 검정을 통해 표본 데이터를 사용하여 모집단에 대한 주장이나 가정의 타당성을 평가할 수 있습니다. 예를 들면 다음과 같은 질문을 할 수 있습니다. 두 그룹 사이에 어떠한 차이가 있을까? 어떤 약을 복용했을 때 효과가 있는 것을 어떻게 알 수 .. 2024. 4. 29. 통계학에서 정규분포가 중요한 이유 아마 정규 분포를 모르시는 분은 없을 것입니다. 정규 분포는 '가우시안 분포'라고도 합니다. 통계학을 모를 때는 가우시안 분포는 어떤 분포지? 정규 분포하고 다른 것인가 하고 찾아보기도 하죠. 그런데 같은 것입니다. 이 글에서는 왜 통계학에서 정규 분포를 중요하게 생각하는지 알아보도록 하겠습니다. (adsbygoogle = window.adsbygoogle || []).push({}); 중심 극한 정리정규 분포를 유래를 알려면 중심 극한 정리를 이야기 해야 합니다. 우리가 세상에서 발생하는 무작위로 여러 가지 일이 있습니다. 만약, 주사위를 굴려 얻은 숫자를 기록한다고 가정해 보겠습니다. 이제 계속해서 주사위를 여러 번 굴리고 매번 발생한 건수를 계산하다 보면 흥미로운 점.. 2024. 4. 24. 이전 1 2 3 4 ··· 9 다음