Loading...
2021. 12. 19. 23:28

enumerate와 zip

1) enumerate 리스트 element iteration할 시 index와 value를 같이 추출하는 기법 사전을 comprehension하여 생성할 수 있다 그림1은 enumerate를 이용한 dictionary comprehension의 예시를 보여준다. index : value 형태가 생각하기 쉽지만 value : index 형태로 생각할줄도 알아야함 자주 쓰니까 2) zip 두개 이상의 리스트를 병렬적으로 추출하는 기법 추출하면 원소들을 튜플로 묶어줌 이차원 행렬에서 열(column)을 추출할 때 유용하다

2021. 12. 19. 23:21

Python의 리스트(list)에 대하여

다양한 타입의 데이터를 하나의 자료로 표현할 수 있는 시퀀스 자료형  1) 리스트 슬라이싱(slicing) 리스트의 값들은 각각에 해당하는 주소(offset)를 갖는다 그 주소를 기반으로 리스트의 부분값을 슬라이싱하여 가져올 수 있는 기법  index가 처음부터 0,1,2,...로 가는건 누구나 알지만 거꾸로 -1,-2,-3...으로 가는건 아무나 아는 것이 아니다   2) concatenation, repeat, in 리스트도 덧셈 연산으로 concatenation 가능 *연산은 리스트를 반복함(repeat) in연산은 해당 원소가 리스트에 포함되어 있는지 확인  3) change element 리스트 내 원소를 변경 바꾸고 싶은 원소의 인덱스 i..

2021. 12. 19. 01:30

urlopen을 할 때 HTTP Error 403: Forbidden error가 난다면

데이터 수집을 하기 위해 크롤링을 수행하는데 from bs4 import BeautifulSoup from urllib.request import urlopen url = 'https://www.chicagomag.com/Chicago-Magazine/November-2012/Best-Sandwiches-Chicago/' html = urlopen(url) soup = BeautifulSoup(html, 'html.parser') soup 다음과 같이 에러가 난다면 이런 경우 다음과 같이 headers를 다음과 같이 추가해서 크롤링 중이라는 것을 숨겨서 크롤링을 할 수 있다고 한다 from bs4 import BeautifulSoup from urllib.request import urlopen, Req..

2021. 12. 18. 23:52

list comprehension

일반적인 for loop보다 빠르게 리스트를 생성할 수 있다 위에가 일반적인 for loop 리스트 생성 아래는 list comprehension으로 생성 list comprehension이 조금 더 빠르다 1) 기본형 [ x for x in ] 에서 x를 뽑아서 x를 리스트에 넣어서 생성 2) 이중for문형 [ x+y for x in for y in ] 에서 x를 뽑은 뒤에 에서 y하나씩 뽑아서 x+y를 넣는다 바꿔말하면 for x in for y in .append(x+y) 3) 조건문 if [x for x in if ] 에서 x를 하나씩 뽑는데 에 맞는 경우만 리스트에 넣어준다 4) 조건문 if~else if만 쓰면 for문 뒤에 써야하는데 if~else를 쓰고 싶으면 for문 앞에 쓴다 [x if..

빅데이터분석기사 3회 대비 실전 벼락치기

1. 정렬하기 data.sort_values( by = (정렬기준이 되는 칼럼) , ascending =True/False) ascending =True이면 오름차순 정렬이고 ascending = False이면 내림차순 정렬 2. series는 대응하는 원소끼리 수학적 계산이 가능 단, 인덱스가 맞지 않으면 계산이 이상해질 수 있음 3. 통계량계산 data.mean() , data.median(), data.sum(), data.count(), data.std(), data.var(), .... 최빈값은 scipy 모듈을 이용해서 구할 수 있음 from scipy.stats import mode mode_data = mode(data) 4. 결측치 찾기 data.isnull().sum()을 통해 결측치가..

2021. 12. 3. 01:37

(빅데이터분석기사) pandas에서 count()를 사용할 때 주의할 점

위에 제시된 데이터프레임의 행의 개수를 구할려면 어떻게 해야할까? 434개인건 명백한데 count함수를 이용하면 다음과 같은 결과가 나온다 왜 이런 결과가 나왔을까? 다음은 데이터프레임에 들어간 boston['RM'].unique() array를 len함수를 이용해서 개수를 세어본 결과이다. 그 비밀은 NA값에 있다. 행의 개수를 세야할 때 pd.DataFrame.count()로 데이터프레임의 행의 개수를 셀 수 있는데 count()함수는 NA가 아닌 값만 세는 특징이 있다. 설명을 보면 non-NA값만 개수를 센다고 나와있다. 그래서 NA값을 세야하는지 세면 안되는지에 따라 주의해서 사용해야한다.