Loading...
2022. 2. 1. 21:42

파이썬(python)의 defaultdict, ordereddict, namedtuple

1. defaultdict 사전에서 value의 기본값을 지정하여 새로 key를 생성할 때 value를 지정하지 않으면 기본값이 자동으로 들어간다 from collections import defaultdict로 사용할 수 있음 단어 빈도수 계산에 유용함 defaultdict를 쓰지 않으면 d[word]하는 순간 에러가 나는데 try~except~로 처리해야하는 번거로움이 있다 하지만 defaultdict로 기본값을 미리 지정해주면 d[word]해도 에러가 안난다 2. Ordereddict 데이터 입력한 순서대로 출력해주는 dictionary 요즘엔 기본 dictionary도 입력한 순서대로 출력해주므로 큰 의미없다 3. namedtuple 튜플 형태로 데이터 구조체(자료 구조, 이름 등)를 저장하는 자..

2022. 2. 1. 21:28

코딩테스트에서 유용한 list의 split과 join

str.split([기준값])은 [기준값]을 기준으로 str을 분리하여 리스트로 만들고 list(str)은 str 1글자씩 원소로 갖는 리스트로 만들어 반환 string = 'daehyuck' string.split() ['daehyuck'] string2 = 'daehyuck yun' string2.split() ['daehyuck','yun'] list(string) ['d','a','e','h','y','u','c','k'] ‘(기준값)’.join(list)는 리스트를 받아서 기준값으로 리스트 원소를 이어 문자열을 반환함 입력된 글자를 역순으로 출력하는 프로그램 word = input('input a word:') word_list = list(word) reverse_list = [] for i ..

데이터분석 전문가(ADP)를 위한 R프로그래밍 기초편2

1. 논리연산 Python이랑 동일함 ==은 서로 같음 != 은 서로 같지 않음 a = b는 a가 b보다 크거나 같다 2. 기본 수학 연산자 + , - , * , / 으로 더하기 빼기 곱하기 나누기 ^ 으로 n제곱 연산 > 5^3 [1] 125 > 5+3 [1] 8 > 5-3 [1] 2 > 5*3 [1] 15 > 12/3 [1] 4 > 12//3 Error: unexpected '/' in "12//" 3. 특수 논리 연산자 ! 은 부정연산 & 는 and 연산 | 은 or 연산 > 3 == 5 [1] FALSE > !(3==5) [1] TRUE > TRUE & FALSE [1] FALSE > TRUE | FALSE [1] TRUE 4. 벡터 인덱..

데이터분석 전문가(ADP)를 위한 R프로그래밍 기초편1

1. 출력함수 print() - 한번에 하나의 객체만 출력 > a print(a) [1] 3 cat() - 여러 항목을 묶어서 연결된 결과 출력 > cat('yun','dae','hyuck') yun dae hyuck > a b cat(a,b) 3 4 2. 할당연산자 a print(a) [1] 3 > a a = 5 > print(a) [1] 5 > a -> 6 Error in 6 6 -> a > print(a) [1] 6 3. 변수 목록보기 ls(), ls.str() 사용가능 > a ls() [1] "a" > ls.str() a : num 3 4. 변수 삭제하기 rm()을 사용 응용하여 rm(list=ls())로 모든 변수 목록 삭제 가능 5. 벡터 생성 c()를 사용 문자, 숫자, 논리값, 변수를 모두..

2022. 1. 29. 21:46

파이썬(python)의 lambda, map, reduce

1. lambda 함수 이름 없이 함수처럼 쓰는 익명함수 lambda (parameter) : (return) (condition) 구조 return 값은 보통 한줄정도로 짧게 사용을 권장하지는 않으나 여전히 사람들이 많이 씀 왜 권장하지 않느냐? 테스트 하기 어려움, 이해하기 어려움, 함수의 docstring도 불가능 2. map 시퀀스형 데이터 각 요소에 특정한 함수를 적용시켜주는 함수 여러개의 파라미터를 갖는 함수라면 여러개의 리스트를 받을 수 있음 a = [1,2,3,4,5] f = lambda x:x**2 list(map(f,a)) [1,4,9,16,25] f = lambda x,y : x+y list(map(f,a,a)) [2,4,6,8,10] 이해하기 어려워 사용을 권장하지는 않는다 f = ..

2022. 1. 28. 17:44

함수의 인자(argument)와 *(asterisk)의 용도

1. argument 1-1) keyword argument 함수에 parameter의 이름을 입력하여 값을 넘기는 방식 def f(x,y): return x+y f(1,2) 3 f(x=1,y=2) ###keyword argument 3 1-2) default argument 함수의 paramter의 기본값을 지정해놓은 방식 default가 없는 인자는 디폴트 인자 앞에 와야함 def f(x,y,z=4): return x+y*z f(1,2) 9 z에 값이 들어가지 않고 z=4인 기본값을 넣고 y=2를 넣은 것이라고 인식을 함 f(1,2,5) 11 z에 기본값인 z=4를 넣지 않고 z=5라고 사용자가 직접 지정을 해서 넣어줌 2. asterisk 2-1) variable-length 함수 정의에서 인자에 ..