본문 바로가기

분류 전체보기144

대규모 데이터 사이언스 프로젝트 시작하기 전 알아야할 개념과 설계 데이터 사이언스 프로젝트의 핵심개념개념설명예데이터 파이프라인데이터 처리 흐름을 단계별로 자동화하는 과정데이터 읽기 → 전처리 → 모델 학습 → 결과 저장파이프라인 관리 프레임워크파이프라인 단계들을 체계화, 재현 가능하게 만드는 도구Kedro, Metaflow, Airflow모델링 프레임워크머신러닝/딥러닝 모델을 학습시키고 사용하는 도구Scikit-learn, PyTorch, TensorFlow분산처리 프레임워크데이터가 너무 클 때 여러 컴퓨터/CPU로 나눠서 처리하는 도구Spark, Dask자동화(Orchestration)파이프라인이나 모델 학습을 스케줄링하거나 자동 실행Airflow, Prefect, Dagster워크플로우 관리파이프라인보다 더 넓게, 다양한 작업 흐름을 관리Airflow, Metafl.. 2025. 5. 4.
Python, Pathlib를 상대 경로 관리 상대경로 관리의 중요성df = pd.read_csv('D:/컴퓨터/폴더1/폴더2/data.csv') # 절대경로하드코딩된 절대경로 -> 다른 컴퓨터에서 실행 불가폴더 이동, 깃허브 업로드 시 오류 발생이전에 사용하던 방식의 문제점import osdata_path = os.path.join('data', 'etf_data.csv')이 방법은 pathlib 사용법보다 복잡하고 가독성이 떨어집니다.운영체제 구분자(/ vs ) 문제 발생 가능합니다.해결책: Pathlib를 활용해 상대경로에 접근Pathlib은 파이썬에서 파일 경로(디렉토리 경로)를 다루는 라이브러리 입니다.기존의 os.path 방시보다 직관적이고 파워풀해서 Python 3.4 이상부터 공식 추천 방식으로 자리잡았어요.경로들을 문자열이 아니라 객.. 2025. 5. 4.
JS 디버깅 도구 console.log() console.log()console.log() 는 JavaScript에서 데이터를 콘솔에 출력할 수 있는 함수입니다. 디버깅, 상태 확인, 실험 등 다양한 상황에서 사용되며, 단순한 출력 이상의 강력한 기능들을 내포하고 있습니다.console.log()의 동작 원리브라우저 환경에서console은 브라우저가 내장한 객체로, 개발자 도구(DevTools) 콘솔에 접근할 수 있도록 함.실제 구현은 브라우저마다 다르미잔 보통 C++로 작성된 콘솔 API를 JS에서 감싼 형태Node.js 환경에서console.log()는 내부적으로 stdout(표준 출력 스트림)을 사용다양한 출력 방식여러값 출력let name = "Tom", age = 30;console.log("이름:", name, "나이:", age);출.. 2025. 4. 5.
JS 기초 문법 1. 변수 선언let name = "Alice"; // 변경 가능한 변수const age = 25; // 변경 불가능한 변수var city = "Seoul"; // 변경 가능한 변수(구)let: 재할당 가능 , 블록 범위const: 재할당 불가능(상수), 블록 범위var: 함수 범위(호이스팅 발생가능)2. 함수// 선언식function sayHello(name){ return 'Hello, ${name}!"; }// 표현식const sayBye = function(name) { return 'Bye, ${name}!';}// 화살표 함수(Arrow fuction)const double = (x) => x * 2;3. 조건문1) if - else if - else2) switch - ca.. 2025. 4. 5.
가장 많이 사용되는 JS 엔진, V8 javascript 엔진이란?JavaScript 엔진은 JavaScript 코드를 실제로 해석하고 실행해주는 프로그램입니다.Javascript는 사람이 이해하기 쉬운 고수준 언어컴퓨터가 직접 이해하려면 저수준의 명령어로 바꿔야함 -> 이 작업을 JS 엔진이 수행브라우저마다 다른 JS 엔진을 탑재주요 Javascript 엔진 비교1. V8사용환경: Chrome, Edge, Node.js제작사: Google특징: 가장 빠른 성능, JIT 컴파일, Node.js2. SpiderMonkey사용환경: Firefox제작사: Mozilla특징: JS 최소 엔진, 지속적인 최적화3. JavascriptCore사용환경: Safari제작사: Apple특징: Nitro 엔진 기반, Apple 생태계 최적화4. Chakra사.. 2025. 4. 5.
iOS UI 자동화 XCUITest API 와 WebDriverAgent, Appium 의 관계 XCUITest(XC는 Xcode의 약자)는 Apple의 UI 테스트 프레임워크로, iOS/macOS 앱을 자동화하여 UI테스트를 실행할 수 있도록 도와주는 프레임워크입니다. XCTest 프레임워크의 확장 기능으로 제공되며, UI 테스트를 수행하는 데 필요한 API를 제공합니다.XCUITest 특징Apple에서 공식적으로 제공하는 UI 테스트 프레임워크Swift 및 Object-C로 작성 가능Xcode에 내장되어 있으며, 별도의 추가 설치 없이 사용가능실제 기기 및 시뮬레이터에서 UI 테스트 실행 가능앱의 접근성(Accessibility Identifier)을 활용하여 UI 요소를 찾고 상호작용 가능비동기 UI 동작을 기다릴 수 있는 API 제공XCUITest 주요 APIXCTestCase: 테스트 케이.. 2025. 3. 18.
selenium과 appium이 사용하는 WebDriver 프로토콜 Selenium과 Appium의 관계Selenium과 Appium은 둘 다 WebDriver 기반의 자동화 도구지만, 서로 다른 목적을 가지고 있습니다.Selenium웹 자동화 프레임워크웹 크라우저(Chrome, Firefox, Edge 등)를 자동화하는 도구웹 애플리케이션 UI 테스트, 크롤링 등에 사용selenium-webdriver를 통해 웹 페이지에서 버튼 클릭, 텍스트 입력 등 수행Appium모바일(iOS/Android) 자동화 프레임워크모바일 네이티브 앱(React Native, Flutter 포함), 웹 앱 자동화내부적으로 WebDriver API를 사용해 모바일 기기과 상호작용iOS의 경우 XCUITest, Android의 경우 UIAutomator2를 활용둘의 관계Appium은 Selen.. 2025. 3. 18.
WebdriverAgentRunner 설치 및 사용 WebDriverAgent(WDA)WebDriverAgent는 Facebook에서 개발한 오픈소스 프로젝트로, iOS 디바이스의 UI를 자동화하기 위해 사용되며, 주로 appium과 함께 사용됩니다.WebDriverAgent는 Apple사의 XCUITest API를 기반으로 작동하며, WebDriver 프로토콜을 활용하여 iOS 디바이스에서 컨트롤 할수 있게 도와줍니다.사전 준비애플 개발자 계정 생성테스트용 어플리케이션가상 디바이스 또는 디바이스설치 및 사용설치 방법Xcode 실행 후, Clon Git Repositoryhttps://github.com/appium/WebDriverAgent.git개발자 계정 등록xcode 설정 > Accounts > 계정 입력 > Download Manual Profi.. 2025. 3. 18.
자연어 처리하기: NLTK 자연어 툴킷자연어 툴킷 Natural Language Toolkit(NLTK)은 영어 텍스트의 부분 부분을 식별하고 태깅하도록 설계된 파이썬 라이브러리 모음입니다. NLTK의 설치 가이드는 http://www.nltk.org/install.html 을 참고하시면 됩니다.NLTK를 사용한 통계적 분석NLTK는 텍스트에서 단어 숫자, 단어 빈도, 어휘 다양도 같은 통계적 정보를 생성할 때 아주 유용합니다. 필요한 것이 비교적 단순한 계산, 예를 들어 텍스트 섹션에서 고유한 단어 숫자를 세는 것 같은 것이라면 NLTK는 좀 과할수 있습니다. NLTK 분석은 항상 Text 객체로 시작합니다. 다음과 같은 방법으로 단순한 파이썬 문자열을 Text 객체로 바꿀 수 있습니다.word_tokenize 함수는 파이썬에서.. 2025. 3. 7.