레퍼런스의 지진해일이 드디어 지나갔다.
계속 써보면서 계속 찾아보는것이 더 빠르게 익혀지기에 기억에 남는, 진짜 찾아보지 않는이상 모르는, 새로 접한것들을 가볍게 정리할 예정이다.
조건문
df[df['A'] > 3]
이렇게 사용하면 df['A']에서 3 이상인 것들만 추출한다.
또한 여기서 df['A'] > 3은 'A' 컬럼의 각 요소에 대해 > 3이라는 조건을 벡터화 방식으로 적용하고, 그 결과는 각 요소가 조건을 만족하는지 여부에 따른 Boolean 값의 시리즈가 된다.
벡터화 연산
벡터화 연산을 배우지는 않았지만 강력한 기능인 것 같아서 정리하려고 한다.
predictions = rf.predict(ds_test)
n_predictions = (predictions > 0.5).astype(bool)
이전에 TensorFlow의 Tfdf Random Forest 모델에서 결과값을 Boolean 값으로 추출하기 위해 사용한 코드이다.
사실 위의 코드는 다른사람이 한 것을 보고 따라한 것인데, numpy array에서 어떻게 하면 더 쉽게 Boolean으로 시리즈, 리스트를 만들까 고민하다가 발견했다.
당시에는 이게 되네? 하고 말았지만 최근 제대로 배우기 시작하고 다시 코드들을 몇개 열어보면서 numpy array에 비교연산자 하나 딱 했는데 어떻게 연산이 되는거지? 하는 의문이 생겨 찾아봤고 거기서 얻은 답이 위와 같은 문법은 벡터화 연산 이라는 것이다.numpy array나 pandas DataFrame에 사용할 때 최대효율을 낸다고 한다.일반 Python의 Iterable한 객체에는 벡터화 연산이 적용되지 않는다고 한다.
contains(pattern, case, regex)
문자열에 특정 문자, 패턴 포함 여부를 확일할 때 정규표현식 사용이 가능하다고 한다.
startswith(tuple)
tuple로 예를들어 ('a', 'b', 'c') 이런식으로 전달하면 a로 시작하는, b로 시작하는, c로 시작하는것들을 함께 조회할 수 있다고 한다. 단순 단어, 문자로만 사용했었는데 지식이 늘었다.
pivot_table
excel의 pivot table처럼 DataFrame을 출력해주는 메소드라고 한다.
인자값이 매~우 많아서 가볍게 정리해 주셨는데
A 별 B 의 C 함수값을 D 인덱스로 확인하기
A == colums
B == values
C == aggfunc
D == index
정도가 보통 많이 쓰이는 인자들이라고 한다.
agg
agg({column : func , column : func})
정도로만 알고있었는데
agg({column : func , column : [func, func, func, func, func, func,,,,,]})
처럼 사용할 수도 있다고 한다.
groupby 관해서도 배우긴 했는데 어쩔수 없이 python에서 해야하는거 아니면 sql로 진행하는게 나아보인다.알아두면 좋을 것 같으니 조금 익숙해지면 따로 다시 정리한 것을 올리겠다.
'프로그래머스 > 데이터분석 데브코스' 카테고리의 다른 글
프로그래머스 데이터분석 데브코스 8-3 (1) | 2024.04.03 |
---|---|
프로그래머스 데이터분석 데브코스 8-1 (0) | 2024.04.01 |
프로그래머스 데이터분석 데브코스 7-2 (0) | 2024.03.26 |
프로그래머스 데이터분석 데브코스 7-1 (0) | 2024.03.25 |
프로그래머스 데이터분석 데브코스 6-5 (0) | 2024.03.22 |