https://velog.io/@zenon8485/%EB%B9%84%EA%B0%9C%EB%B0%9C%EC%9E%90%EB%A5%BC-%EC%9C%84%ED%95%9C-CS-%EC%A7%80%EC%8B%9D-1.-%EC%BB%B4%ED%93%A8%ED%84%B0-%EA%B5%AC%EC%A1%B0%EC%9D%98-%EC%9D%B4%ED%95%B4 비전공자를 위한 CS 지식: 1. 컴퓨터 구조의 이해 비전공자 출신 개발자와 개발자와 협력(기획, 운영)하시는 분들이 최소한의 컴공 지식을 갖추고 개발자와 원활한 소통을 하기위한 포스트입니다.컴퓨터 구조 지식은 크게 2가지로 하나는 컴퓨 velog.io https://www.youtube.com/watch?v=JqH7yCeu2Us&list=PLVsNizTWUw7FC..
1. 목표 pandas의 groupby 함수를 활용하여 데이터의 그룹화 실현 집계 함수 및 정력 함수를 사용하여 그룹 데이터의 특성 요약 데이터 그룹화를 하는 이유 특정 데이터 그룹의 특징에 대한 정보를 얻을 수 있어서다. A,B,C 라는 Key 값으로 분류한다 -> A,B,C 에 있는 공동적인 Value 값 도출 groupby 메소드 pandas의 groupby 메소드는 열, 열의 리스트 또는 행 인덱스를 기준으로 그룹화를 진행시켜준다. groupby 연산 결과로 Groupby 객체를 반환한다. Groupby 객체에는 그룹연산 메소드가 내장되어 있다. Group By -> Method(sum,mean,median,std/var,count,min/max) -> Aggregation(통계적 특징 도출) 사..
파이썬을 공부하러 인터넷을 돌아다니다 흥미로운 걸 보게 되었다. 지능형 리스트(list comprehension)를 쓰느냐, map 함수를 쓰느냐에서 지능형 리스트를 쓰는 게 좋다는 것. 사실 지능형 리스트는 for 문이 들어가 있어서 map 함수를 쓰는 게 좋다고 생각했는데, 아니었다. a = [sum(i) for i in s if i>20] b = list(filter(lambda x x>20, map(sum,s)) 만약에 리스트 내에 for 문이 들어 있는 값을 할당한다면, 무조건 리스트 컴프리 헨션이 빠르다. 이는 데이터 값이 많을수록 차이가 훨씬 난다. https://testspoon.tistory.com/186 RePythonOOP 9일차 파이썬 컨테이너 VS 플랫, 가변 VS 불변, 리스트 ..
1. 목표 각기 다른 두개 이상의 DataFrame을 하나로 병합 (Join, Merge) 하여 결과 집합으로 만들어낸다. Inner Join, Outer Join, Left Join, Right Join이 존재. 데이터의 구조와 문제에 맞게 적용한다. 실전에서 생기는 상황에 대한 적용을 학습한다. Inner Join Dataframe 간 조인 조건을 만족하는 행 (교집합)을 합치는 것 >key 값이 A,B 모두에 존재해야 병합 가능 >일치하는 키 값이 없다면 결과 테이블에 포함 X 일대일 병합 a,b,c 컬럼과 c,d 컬럼이 있다면 a,b,c,d 컬럼이 된 병합 데이터프레임이 된다. 이때 c 컬럼은 결과 수가 같아야 한다. 일대다 병합 만약 C 컬럼의 결과 수가 다르다면? A B C A1 B1 C1 A..
목표 pandas를 활용하여 데이터의 생성, 조회, 변경, 및 삭제. Open API가 제공하는 JSON 형식의 데이터를 pandas DataFrame으로 변환 CRUD 데이터의 생성, 조회, 수정, 삭제를 일컫는 말 Create, Read, Update, Delete -> CRUD DataFrame을 목적에 맞게 변경하여 다루는 게 중요하다. 열을 생성하거나, DataFrame안의 값을 업데이트 하거나, 행을 제거하거나 하는 일을 실행한다. DataFrame의 인덱스 loc 인덱서를 이용하여 원하는 데이터 조회(불리안 인덱싱 및 일반 조회) OpenAPI를 이용한 데이터 수집 공공데이터 포털, 영화진흥위원회 불러 올 때 가장 인기 있는 형식은 Json. JSON은 파이썬의 딕셔너리와 굉장히 비슷하게 생..
bin,oct,hex 함수를 사용할 때는 항상 0b,0o,0x가 붙는다. print(bin(10)) print(oct(10)) print(hex(10)) 0b1010 0o12 0xa 이럴 때는 두 가지 방법이 있다. 1. 인덱싱하기 print(bin(10)[2:]) print(oct(10)[2:]) print(hex(10)[2:]) 1010 12 a 자체적으로 2번째 항목부터 인덱싱을 하면 빠진다. 2. 포맷함수 사용해서 변환 format(10진수 숫자, '변환하고자 하는 진수의 표현방식')으로 사용하면 된다. 당연하게도 b는 2진수, o는 8진수, x는 16진수다. format(10, 'b') format(10, 'o') format(10, 'x') +보너스 16진수 변환 할 때 소문자로 나온다. 만약..