0과 1로 숫자를 표현하는 방법 컴퓨터는 0과 1로 모든 정보를 표현하고, 0고 1로 표현된 정보만을 이해할 수 있습니다. 하지만 컴퓨터는 3 + 4의 계산 결과를 7이라는 답변을 낼 수 있습니다. 과연 어떻게 7이라는 답변을 낼 수 있을 지 살펴보겠습니다. 정보 단위 컴퓨터가 이해하는 가장 적은 정보 단위는 비트(bit) 입니다. 쉽게 생각하여 비트는 전구로 빗대어 이해 할 수 있습니다. 1비트는 한개의 전구에 대하여 켜짐(1), 전구 꺼짐(0) 으로 총 두 가지의 상태를 표현 할 수 있습니다. 2비트는 두개의 전구에 대하여 (꺼짐,꺼짐), (꺼짐, 켜짐), (켜짐, 꺼짐), (켜짐, 켜짐) 총 네 가지의 상태를 표현 할 수 있습니다. 3비트는 세 개의 전구에 대하여 총 여덟 가지의 상태를 표현 할 수..

전체 글
rm -rf /0과 1로 문자를 표현하는 방법 컴퓨터는 0과 1만 이해할 수 있다고 했는데, 우리가 컴퓨터에서 문서 작업을 하거나 인터넷을 볼때나 문서등을 볼 때 숫자로 입력하고 숫자로 출력되는 것이 아닌 문자로써 사용을 하게 된다 어떻게 컴퓨터가 문자를 이해하고 출력을 하는걸까? 문자 집합과 인코딩 0과 1로 문자를 표현하는 방법에 대해 알기 위해 알아야 할 용어가 있습니다. 문자 집합(character set) : 컴퓨터가 인식하고 표현할 수 잇는 문자의 모음 컴퓨터는 문자 집합에 속해 있는 문자를 이해할 수 있고, 반대로 문자 집합에 속해 있지 않은 문자는 이해할 수 없다. 문자 인코딩(character encoding) : 문자 집합에 속한 문자를 0과 1로 변환 하는 과정 문자 집합에 속한 문자라고 해서 컴퓨..
                                                                                                                                    &n..
예제 TV 객체 추상화 상태(속성) → 상태를 동작 보다 먼저 정의 전원상태, 볼륨, 채널번호 동작(기능) 전원 켜기/끄기, 볼륨 변경하기, 채널 변경하기 TV 클래스 모델링 필드(인스턴스 변수) → 상태(속성) 표현 on, volume, channel 메소드(멤버함수) → 동작(기능) 표현 turnOn() , turnOff() , changeVolume(), changeChannel() class Tv: def __init__(self, on, ch, vol): # 생성자 - 필드 초기화 self.on = on # 필드 = 인스턴스 변수 생성 self.channel = ch self.volume = vol def print(self): # 메소드 = 멤버 함수 print(self.on, self.cha..
텍스트 데이터 텍스트 데이터 종류 구조화된 문서 : HTML, XML, CSV, JSON 파일 구조화되지 않은 문서 : 자연어로 된 텍스트 파이썬 텍스트 데이터 관련 라이브러리 기본 라이브러리에서 제공하는 문자열 처리 함수 문자열 객체(str) 메소드 string 모듈 → 문자열 상수 정의 string.ascii uppercase, string.ascii_letters, string.digits 외부 모듈 wordcloud → 워드 클라우드 생성 re → 정규 표현식 BeautifulSoup, csv, json, nltk 등 문자열 변경 불가능 자료형 → str 문자열 상수 작은 따옴표나, 따옴표로 묶음 ex) ‘test’ == “test” ex) ‘I am not “human”.’ 여러줄 문자열 상수는..
넘파이(numpy) 배열 리스트처럼 여러 개의 값들을 저장할 수 있는 자료구조 리스트는 다양한 자료형의 데이터 저장 가능 넘파이 배열은 같은 자료형의 데이터 저장 리스트보다 데이터 처리속도가 빠름 리스트는 데이터 접근을 위해 이중 참조 ⇒ 해당 이유 때문에 리스트의 처리속도가 느림 리스트는 객체 배열 넘파이 배열은 한번의 참조로 데이터 접근 가능 대량의 데이터를 빠르게 처리하려면 넘파이 배열 필요 데이터 과학, 인공지능 분야에서 넘파이 배열 사용 넘파이 배열은 ndarray 클래스로 구현 ndarray 클래스 장점 C언어에 기반한 배열 구조이므로 메모리를 적게 차지하고 속도가 빠르다. 배열과 배열 간에 수학적인 연산을 적용 배열의 모든 원소 적용되는 연산자 함수 제공 행렬 연산 고급 연산자와 풍부한 함수..
데이터 시각화**(data visualization)** 점이나 선, 막대 그래프 등의 시각적 이미지를 사용하여 데이터를 화면에 표시하는 기술 효과적인 시각화는 사용자가 데이터를 분석하고 추론하는 데 도움 데이터를 직관적으로 이해 matplotlib 데이터 시각화 도구 선 그래프, 산포도 등 다양한 그래프 그리는 용도 맷플롯립 활용 단계 pyplot 모듈 불러오기 import matplotlib.pyplot as plt plt 별칭 사용 수치 데이터 정의 → 리스트, 넘파이 배열 2차원 데이터 → x축 데이터, y축 데이터 x축, y축 데이터 개수 동일 그래프 종류 결정 선 그래프 → plot() 함수 그래프 세부 설정은 인자로 전달 → 선 색, 마크 종류, 선 두께 등 제목, y축 레이블 설정 titl..
판다스(Pandas) 데이터 분석을 위해 만들어진 파이썬 패키지(라이브러리) 엑셀처럼 행과 열로 이루어진 표 형태의 데이터를 처리 대부분의 데이터는 시계열(series)이나 표(table)의 형태 판다스 패키지 시리즈(Series) 클래스, 데이터프레임(DataFrame) 클래스 제공 cf) 넘파이 2차원 배열 행렬 matrix 형태의 데이터를 지원 데이터의 속성을 표시하는 행이나 열의 레이블이 없음 판다스 특징 다양한 형태의 데이터에 적합 이종 자료형의 열을 가지는 표 데이터 시계열 데이터 레이블을 가진 행렬 데이터 관측 통계 데이터 핵심 구조 시리즈(Series) 1차원 구조를 가지는 하나의 열 데이터 프레임(DataFrame) 복수의 열을 가지는 2차원 데이터 각각의 열을 시리즈, 시리즈가 모여 데..