📒 Today I Learn

2024.07.15  문제를 풀다보니 %어쩌고저쩌고% 포함된 글자면 출력해줘~ 라고 하는 걸 보면 sql의 like를 그렇게 그리워 했는데 파이썬에도 비슷한 기능이 있어 정리한다. 먼저 예시로 다음과 같은 데이터 프레임이 있다고 해보자. 그리고 각 메소드를 통해 결과값의 차이를 예시로 비교해보겠다.  ✳️ .str.startswith( )sql과 비교하자면, like '어쩌고%' 같이 처음 시작하는 문자만 필터 가능하다.앞 글자가 'F'인 것만 출력 되었다.  ✳️ .str.contains( )앞뒤 글자 상관없이 특정 단어가 들어가기만 하면 되는,like '%어쩌고%' 같은 걸 필터할 때 사용한다.중간이든 처음이든 'F'가 들어가면 일단 출력해준다.
2024.07.15  ✳️ 값 바꾸기🔹값 1개만 변경df.loc[행의 인덱스, '컬럼명'] = 바꿀 값 🔹특정 열 통째로 변경# 한가지 값으로 변경할 경우df.loc['컬럼명'] = 바꿀 값# 리스트 내역으로 변경할 경우df.loc['컬럼명'] = 바꿀 값 리스트 🔹특정 행 통째로 변경df.loc[행의 인덱스] = 바꿀 값 리스트 🔹여러 행, 여러 열의 값 동시 변경df.loc[행의 인덱스 리스트, 열 이름 리스트] = 바꿀 값 🔹조건에 해당하는 위치의 값 변경df.loc[조건, 바꿀 행] = 바꿀 값 🔹replace를 이용한 특정 값 대체# replace method 사용df = df.replace(기존 값, 변경 값)# 특정 열 내에서만 값을 대체df = df.replace({'열 이름' ..
2024.07.15 ✳️ .drop_duplicates( )데이터프레임에서 중복되는 행을 제거하고 고유한 값만 남기고 싶을 때 쓰는 methodimport pandas as pddf.drop_duplicates() 🔹 중복제거df.drop_duplicates()아무것도 지정하지 않으면 모든 컬럼을 기준으로 중복을 제거한다.  🔹 열 지정 중복 제거파라미터로 열을 지정하면 지정된 열을 기준으로 중복 제거한다.▶ 단일 df.drop_duplicates(['컬럼명'])▶ 여러 개df.drop_duplicates(['컬럼명1', '컬럼명2'])  🔹 남길 대상 지정중복되는 데이터 중, 어떤 행을 남길지 지정할 수 있다.1. 첫 번째 남기기 : 인덱스 기준으로 가장 앞에 있는 행을 남김df.drop_dupl..
2024.07.15  ✳️.loc[  ]loc는 location의 약어이다.데이터 프레임의 행 또는 열을 label이나 boolean array로 인덱싱하는 방법이다.사람이 읽을 수 있는 라벨 값으로 특정 값들을 골라오는 방법!df.loc[행, 열] 🔹 label 인덱싱기본적으로 df.loc[0] 이라고 인덱싱을 하면, df라는 데이터프레임에서 index가 0인 행 을 출력하라는 뜻이 된다.여기서  df.loc[0, '컬럼 이름']  라고 쓰면, index가 0인 행 에서 지정한 컬럼에 대한 값을 출력해준다.만일 df.loc['컬럼 이름'] 이라고 컬럼 이름만 써준다면, 해당 컬럼의 데이터 값만 출력해준다. 🔹 loc와 slicing df.loc[:, :]  - 전체 행, 전체 열을 출력df.loc[..
✳️ 할당 (Assignment)값을 할당하는 것인데 보통은 오른쪽의 값을 왼쪽 변수에 할당한다 라는 흐름이다.다양한 할당연산자가 있다. 리스트 a를 b에 할당a = [1, 2, 3]b = a이렇게 a 리스트를 b라는 변수에 할당을 해봤다.그렇다면 리스트는 2개가 생성된 것일까?a is b # Truea와 b가 같다가 true로 나온다.이름은 다르지만 사실은 같은 리스트로 하나의 리스트에 두 개의 이름.. 이런 식이었다.b[1] = 10print(a)# [1, 10, 3]print(b)# [1, 10, 3]그래서 b 리스트에 1번 인덱스의 값을 10으로 바꿔주면 a와 b를 출력했을 때 모두 값이 변경된다.그림으로 보자면 이런 식으로 하나의 리스트임을 알 수 있다.  ✳️ 복사 (Copy).copy( ) ..
2024.07.12    🔒 20번) 데이터를 로드하라DataUrl : 'https://raw.githubusercontent.com/Datamanim/pandas/main/chipo.csv'🔓 해결 방법import pandas as pddf = pd.read_csv('https://raw.githubusercontent.com/Datamanim/pandas/main/chipo.csv')df   🔒 21번) quantity 컬럼 값이 3인 데이터를 추출하고 첫 5행을 출력하라quantity 컬럼 중에 값이 3인 데이터들만 추출, 그리고 위에서부터 5행만 출력🔓 해결 방법df[df['quantity'] == 3].head(5)df['quantity'] == 3먼저 요것의 뜻은.. 데이터 값이 3인 ..
2024.07.11   ✳️ 산포도 (Dispersion): 관찰된 데이터가 흩어져 있는 정도. 분산도 (Degree of dispersion), 변산성 (Variability) 이라고도 한다.다음은 산포도의 지표의 종류를 정리하였다. 1️⃣ 범위 (Range): 최대값 - 최소값자료의 퍼짐 정도를 가장 쉽게 나타낼 수 있다.두 자료가 넓게 퍼져 있으면 범위는 커지고 모여 있으면 작아진다.계산하기는 쉽지만 양쪽 극단값에 지나치게 좌우된다. 2️⃣ 사분위간 범위 (Interquartile range, IQR): IQR = Q3 - Q1전체 데이터를 25% 단위로 나눌 수 있는 Q1(1사분위수), Q2(2사분위수), Q3(3사분위수)를 말한다.제 1사분위수와 제 3사분위수의 범위가 사분위간 범위사분위수(Qu..
2024.07.11오늘도 판다스 모듈을 사용해보면서 여러가지 method를 사용하는 연습을 해봤당..판다스 참 좋더라...  🔒 7번) 데이터셋의 인덱스 구성은 어떻게 되는가?인덱스 구성을 구하라는 말이 조금 이상하지만.. 앞에 라벨링처럼 되어있는 인덱스의 번호와 간격을 구하라는 것 같다. 🔓 해결 방법먼저 데이터셋을 전부 불러와 보면 맨 앞 줄에 굵은 글씨로 된게 인덱스!df.index().index( ) 를 사용하면 전체 데이터의 index의 시작부터 끝 번호와 간격의 범위를 알려준다.  🧐 그렇다면 특정 컬럼의 데이터 값으로 정렬해서 데이터를 재구성하면 index 구성이 어떻게 될까!# 'gameDuration'이라는 컬럼으 값으로 정렬을 해보았다.df.sort_values('gameDurat..
2024.07.10오늘은 아래 사이트에서 아주 초반 부분을 다뤄보며 스터디를 하기로 했기 때문에 풀어본 순서대로 적어보았다.나는 데이터 전처리 100문제 content 1번 getting & knowing data 의 1번 ~ 5번을 풀기로 배정 받았다. 나머지도 차차 해볼 예정이다.https://www.datamanim.com/dataset/99_pandas/pandasMain.html#getting-knowing-data 판다스 연습 튜토리얼 — DataManimQuestion 43 df의 데이터 중 new_price값이 lst에 해당하는 경우의 데이터 프레임을 구하고 그 갯수를 출력하라 lst =[1.69, 2.39, 3.39, 4.45, 9.25, 10.98, 11.75, 16.98]www.dat..
2024.07.09많은 말을 하지 않고 사진으로 나의 심정을...  ✳️ While 문- 조건을 만족하는 동안 코드 블록을 반복 실행- 특정 조건이 참(true)일 때만 실행되며 조건이 거짓(false)이 될 때까지 반복while 조건: # 조건은 불리언 값을 반환하는 표현식 코드_블록 예시)tree_hit = 0while tree_hit 나무를 1번 찍었습니다.나무를 2번 찍었습니다. 나무를 3번 찍었습니다. 나무를 4번 찍었습니다. 나무를 5번 찍었습니다.나무를 6번 찍었습니다. 나무를 7번 찍었습니다. 나무를 8번 찍었습니다. 나무를 9번 찍었습니다. 나무를 10번 찍었습니다.✅ While 문과 break 문# 반복 카운트를 위한 변수 초기화count = 0# 무한 루프while..
se0ehe
'📒 Today I Learn' 카테고리의 글 목록 (9 Page)